Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/getolympus/olympus-dionysos-field-code
Διώνυσος — Code field, this component is a part of the Olympus Dionysos fields for WordPress.
https://github.com/getolympus/olympus-dionysos-field-code
code codemirror custom field framework olympus-zeus php twig wordpress
Last synced: about 2 months ago
JSON representation
Διώνυσος — Code field, this component is a part of the Olympus Dionysos fields for WordPress.
- Host: GitHub
- URL: https://github.com/getolympus/olympus-dionysos-field-code
- Owner: GetOlympus
- License: mit
- Created: 2016-04-28T22:57:08.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2023-12-20T22:11:54.000Z (about 1 year ago)
- Last Synced: 2024-05-02T02:05:28.136Z (8 months ago)
- Topics: code, codemirror, custom, field, framework, olympus-zeus, php, twig, wordpress
- Language: PHP
- Homepage:
- Size: 37.1 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Dionysos Code Field
[![Olympus Component][olympus-image]][olympus-url]
[![CodeFactor Grade][codefactor-image]][codefactor-url]
[![Packagist Version][packagist-image]][packagist-url]
[![MIT][license-image]][license-blob]> This component is a part of the **Olympus Dionysos fields** for **WordPress**.
> It uses the default WordPress code field made with a complete integration with codemirror JS component.```sh
composer require getolympus/olympus-dionysos-field-code
```---
## Table of contents
[Field initialization](#field-initialization) • [Variables definition](#variables-definition) • [Accepted mode](#accepted-mode) • [Retrive data](#retrive-data) • [Release History](#release-history) • [Contributing](#contributing)
---
## Field initialization
Use the following lines to add a `code field` in your **WordPress** admin pages or custom post type meta fields:
```php
return \GetOlympus\Dionysos\Field\Code::build('my_code_field_id', [
'title' => 'How do Penguins code their icebergs?',
'default' => 'With a frozen bug.',
'description' => 'A simple question to let you know how to seduce a penguin.',
'mode' => 'json',
'rows' => 4,/**
* Code mirror settings
* @see https://developer.wordpress.org/reference/functions/wp_get_code_editor_settings/
*/
'settings' => [
'indentUnit' => 2,
'indentWithTabs' => false,
'tabSize' => 2,
],
]);
```## Variables definition
| Variable | Type | Default value if not set | Accepted values |
| ------------- | ------- | ------------------------ | --------------- |
| `title` | String | `'Code'` | *empty* |
| `default` | String | *empty* | *empty* |
| `description` | String | *empty* | *empty* |
| `mode` | String | `text/html` | see [Accepted mode](#accepted-mode) |
| `rows` | Integer | `4` | `> 1` |
| `settings` | Array | see [Field initialization](#field-initialization) | see [WordPress reference](https://developer.wordpress.org/reference/functions/wp_get_code_editor_settings/) |## Accepted mode
* `text/css` or `css`
* `text/x-diff` or `x-diff` or `diff`
* `text/html` or `html`
* `text/javascript` or `javascript` or `js`
* `application/json` or `json`
* `text/x-markdown` or `markdown` or `md`
* `application/x-httpd-php` or `x-httpd-php` or `php`
* `text/x-python` or `x-python` or `python`
* `text/x-ruby` or `x-ruby` or `ruby`
* `text/x-sh` or `x-sh` or `sh`
* `text/x-mysql` or `x-mysql` or `mysql`
* `text/x-mariadb` or `x-mariadb` or `mariadb`
* `application/xml` or `xml`
* `text/x-yaml` or `x-yaml` or `yaml`## Usage example
Fill the form properly (with JSON in this example):
```json
{
"response": "With a frozen bug."
}
```## Retrive data
Retrieve your value from Database with a simple `get_option('my_code_field_id', '')` (see [WordPress reference][getoption-url]):
```php
// Get code from Database
$code = get_option('my_code_field_id', '');// Display code in HTML tag
echo ''.htmlspecialchars($code).'';
```## Release history
| Version | Note |
| :------ | :--- |
| 0.0.14 | Fix jQuery integration on domReady |
| 0.0.13 | Add new CodeMirror css for widget integration |
| 0.0.12 | New Olympus components compatibility
Change repository to be a part of Dionysos fields |## Contributing
1. Fork it ()
2. Create your feature branch (`git checkout -b feature/fooBar`)
3. Commit your changes (`git commit -am 'Add some fooBar'`)
4. Push to the branch (`git push origin feature/fooBar`)
5. Create a new Pull Request---
**Built with ♥ by [Achraf Chouk](https://github.com/crewstyle "Achraf Chouk") ~ (c) since a long time.**
[olympus-image]: https://img.shields.io/badge/for-Olympus-44cc11.svg?style=flat-square
[olympus-url]: https://github.com/GetOlympus
[codefactor-image]: https://www.codefactor.io/repository/github/GetOlympus/olympus-dionysos-field-code/badge?style=flat-square
[codefactor-url]: https://www.codefactor.io/repository/github/getolympus/olympus-dionysos-field-code
[getoption-url]: https://developer.wordpress.org/reference/functions/get_option/
[license-blob]: https://github.com/GetOlympus/olympus-dionysos-field-code/blob/master/LICENSE
[license-image]: https://img.shields.io/badge/license-MIT_License-blue.svg?style=flat-square
[packagist-image]: https://img.shields.io/packagist/v/getolympus/olympus-dionysos-field-code.svg?style=flat-square
[packagist-url]: https://packagist.org/packages/getolympus/olympus-dionysos-field-code