Skip to content

Διώνυσος — Content field, this component is a part of the Olympus Dionysos fields for WordPress.

License

Notifications You must be signed in to change notification settings

GetOlympus/olympus-dionysos-field-content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Dionysos Content Field

This component is a part of the Olympus Dionysos fields for WordPress.

composer require getolympus/olympus-dionysos-field-content

Olympus Component CodeFactor Grade Packagist Version MIT



Field initialization

Use the following lines to add a content field in your WordPress admin pages or custom post type's meta fields:
Note the $identifier (first ::build() parameter) is set to false because no value is stored in database.

return \GetOlympus\Dionysos\Field\Content::build(false, [
    'title'   => 'The Dark Knight',
    'content' => '',
    'debug'   => false,
    'file'    => 'im_the_batman.php',
    'vars'    => [
        'question' => 'Who\'s the Batman?',
        'answers'  => [
            'the-joker'    => 'The Joker',
            'harley-quinn' => 'Harley Quinn',
            'bruce-wayne'  => 'Bruce Wayne, don\'t tell anybody!',
            'gotham-city'  => 'Gotham City',
        ],
    ],
]);

Variables definitions

Variable Type Default value if not set Accepted values
title String 'File contents' empty
content String empty empty
debug Bookean empty empty
file String false true or false
vars Array empty empty

Notes:

  • Set content to display HTML tags. It can be used as a fallback if file doesn't exist
  • Set debug to true to enable the debug mode in case file inclusion fail
  • Set file to define the PHP file path to include as include_once PHP function

Vars usage

In the included file (im_the_batman.php in this example), you can use the $v variable as an array:

// Display question
echo '<h2>'.stripslashes($v['question']).'</h2>';
echo '<ul>';

// Display answers choices with radio button
foreach ($v['answers'] as $k => $answer) {
    echo '<li class="'.$k.' is-the-batman">'.stripslashes($answer).'</li>';
}

echo '</ul>';

Content display priority

The component will display, by priority:

  1. included file path
  2. everything in content

Note: do not forget to set debug to true to display an error in the case the file does not exist or is not readable.

Release History

0.0.12

  • Remove useless description

0.0.11

  • New Olympus components compatibility
  • Change repository to be a part of Dionysos fields

0.0.10

  • FIX: content raw display on twig file

Contributing

  1. Fork it (https://github.com/GetOlympus/olympus-dionysos-field-content/fork)
  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 ~ (c) since a long time.

About

Διώνυσος — Content field, this component is a part of the Olympus Dionysos fields for WordPress.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published