3. Load page setting admin (ok)

wp-content/plugins/lionel-setup-content/admin/class-lionel_content-settings.php

<?php
  class Lionel_Content_Settings
  {
    private $plugin_name;
    private $version;
    private $buffer;
    public function __construct ()
    {

    }
    public function load_page ()
    {
?>
<div class="ecp-grid ecp-col-940 ecp-top-menu" ecp-registered="1">
  <div class="ecp-header-wrapper">
    <div class="ecp-grid ecp-col-700">
      <div class="ecp-header-logo"></div>
      <ul class="ecp-header-menu">
        <li class="ecp-active-tab"><a class="ecp-tab-selector" href="#" data-link="ecp_settings"><span><?php _e('Settings', 'evergreen_content_poster'); ?></span></a></li>
        <li class=""><a class="ecp-tab-selector" href="<?php echo get_bloginfo('wpurl'); ?>/wp-admin/admin.php?page=evergreen_content_library" data-link="ecp_content_library"><span><?php _e('Content Library', 'evergreen_content_poster'); ?></span></a></li>
      </ul>
    </div>
    <div class="ecp-grid ecp-col-220 ecp-fit">
      <?php
        wp_nonce_field('evergreen-settings-save', 'evergreen-settings-save');
      ?>
      <button id="save_settings" class="button ecp-navy-button ecp-save-settings" disabled><?php _e('Save Changes', 'evergreen_content_poster'); ?></button>
    </div>
    <div class="ecp-clearfix"></div>
  </div>
  <div class="ecp-wrapper">
    <div class="ecp-container">
      <div class="ecp-section">
        <div class="ecp-grid ecp-col-700">
          <form id="ecp_settings_form" method="post" action="<?php echo esc_html (admin_url ('admin-post.php')); ?>">
            <div class="ecp-admin-tab ecp-grid ecp-col-940"
                 style="display: block;">
                <div class="ecp-section ecp-grid ecp-col-940 ecp-fit ecp-option-container ecp-general-settings-title-wrapper">
                    <h2><?php _e('General Settings', 'evergreen_content_poster'); ?></h2>
                </div>
                <div class="ecp-grid ecp-col-940 ecp-option-container ecp-field-setting">
                    <div class="ecp-grid ecp-col-300">
                        <p class="ecp-input-label ecp-label-min-days"><?php _e('Minimum number of days not to repeat the same post', 'evergreen_content_poster'); ?></p>
                        <p class="description"><?php _e('If zero, this won\'t be taken into account and post can be potentially be posted twice on the same day.', 'evergreen_content_poster'); ?></p>
                    </div>
                    <div class="ecp-grid ecp-col-300">
                        <input type="number" name="eg_numberofdays" min="1" max="120" required="true" value="2" class="ecp-admin-input field-setting" data-ref="saved_numberofdays" aria-invalid="false" />
                        <input type="hidden" name="saved_numberofdays" value="1" />
                    </div>
                </div>
            </div>
          </form>
        </div>
      </div>
    </div>
  </div>
</div>
<?php
    }
  }

wp-content/plugins/lionel-setup-content/admin/class-lionel_content-admin.php

<?php
  class Lionel_Content_Admin
  {
    private $plugin_name;
    private $version;
    private $plugin_public_name;
    private $service;
    private $client_id;
    private $settings;
    private $buffer_service;
    public function __construct ($plugin_name, $version)
    {
      $this->plugin_name = $plugin_name;
      $this->version = $version;
      $this->plugin_public_name = 'Lionel Content';
      $this->service = 'Buffer';
      $this->load_dependencies();
    }
    public function enqueue_styles ()
    {
      if (LIONEL_CONTENT_ENABLE_DEBUG == true) :
        wp_enqueue_style($this->plugin_name, plugin_dir_url(__FILE__) . 'css/lionel_content-admin.css', array(), time(), 'all');
      else :
        wp_enqueue_style($this->plugin_name, plugin_dir_url(__FILE__) . 'css/lionel_content-admin.css', array(), $this->version, 'all');
      endif;
    }
    public function enqueue_scripts ()
    {
      if (LIONEL_CONTENT_ENABLE_DEBUG == true) :
        wp_enqueue_script($this->plugin_name, plugin_dir_url(__FILE__) . 'js/lionel_content-admin.js', array('jquery'), time(), false);
        // set variables for script
        wp_localize_script($this->plugin_name, 'ajaxSettings', array('ajaxurl' => admin_url('admin-ajax.php')));
      else :
        wp_enqueue_script($this->plugin_name, plugin_dir_url(__FILE__) . 'js/lionel_content-admin.js', array('jquery'), $this->version, false);
        // set variables for script
        wp_localize_script($this->plugin_name, 'ajaxSettings', array('ajaxurl' => admin_url('admin-ajax.php')));
      endif;
    }
    public function load_dependencies ()
    {
      require_once plugin_dir_path(dirname(__FILE__)) . 'includes/class-lionel_content_buffer.php';
      require_once plugin_dir_path(dirname(__FILE__))
        . 'admin/class-lionel_content-settings.php';
      $this->settings = new Lionel_Content_Settings();
    }
    public function lionel_content_admin_menu ()
    {
      if (!is_user_logged_in()) {
        return;
      }
      add_menu_page(
        __('Evergreen Content', 'evergreen_content_poster'),
'Evergreen Content',
        'edit_posts',
        'lionel_content_settings',
        array($this, 'lionel_content_settings_page'),
        'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDEzIiBoZWlnaHQ9IjUyNCIgdmlld0JveD0iMCAwIDQxMyA1MjQiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMzk2LjU2NiAyNDYuODQ1QzQwNy4zNTkgMjcyLjA4OSA0MTIuNzU2IDI5OC41MyA0MTIuNzU2IDMyNi4xNjlDNDEyLjc1NiAzNTMuODA3IDQwNy4zNTkgMzgwLjI0OSAzOTYuNTY2IDQwNS40OTNDMzg2LjE0MiA0MjkuODc1IDM3MS40MjggNDUxLjQ2NyAzNTIuNDIyIDQ3MC4yNjlDMzQ4LjM5IDQ3NC4yNTggMzQ0LjIzMSA0NzguMDU2IDMzOS45NDUgNDgxLjY2M0wzNDAuNzIxIDQ3MS40MjJMMzQwLjg2IDQ2OS41ODZDMzQyLjczMyA0NjcuODY4IDM0NC41NzkgNDY2LjEwOSAzNDYuMzk4IDQ2NC4zMDlDMzY0LjYxOSA0NDYuMjgxIDM3OC43MjYgNDI1LjU4MiAzODguNzE4IDQwMi4yMUMzOTkuMDYyIDM3OC4wMTUgNDA0LjIzNCAzNTIuNjY4IDQwNC4yMzQgMzI2LjE2OUM0MDQuMjM0IDI5OS42NzEgMzk5LjA2MiAyNzQuMzI0IDM4OC43MTggMjUwLjEyOUMzODQuNjMxIDI0MC41NjggMzc5Ljg1NSAyMzEuNDU0IDM3NC4zOTEgMjIyLjc4OEwzNzMuNjM3IDIwNi42MDVDMzgyLjc3MyAyMTkuMDQ3IDM5MC40MTcgMjMyLjQ2IDM5Ni41NjYgMjQ2Ljg0NVpNNjEuMTE3OSA0NzAuMjY5QzQyLjExMzIgNDUxLjQ2NyAyNy4zOTkxIDQyOS44NzUgMTYuOTc1NSA0MDUuNDkzQzYuMTgyOSAzODAuMjQ5IDAuNzg2NjE3IDM1My44MDcgMC43ODY2MTcgMzI2LjE2OUMwLjc4NjYxOCAyOTguNTMgNi4xODI5IDI3Mi4wODkgMTYuOTc1NSAyNDYuODQ1QzIzLjI5MzcgMjMyLjA2NiAzMS4xODgyIDIxOC4zMTMgNDAuNjU5MiAyMDUuNTg0TDM5LjM0MTIgMjIyLjQ4N0MzMy43OTc0IDIzMS4yNDMgMjguOTU4MSAyNDAuNDU3IDI0LjgyMzMgMjUwLjEyOUMxNC40Nzk0IDI3NC4zMjMgOS4zMDc0NCAyOTkuNjcgOS4zMDc0NCAzMjYuMTY5QzkuMzA3NDQgMzUyLjY2OCAxNC40Nzk0IDM3OC4wMTUgMjQuODIzMyA0MDIuMjFDMzQuODE1MiA0MjUuNTgyIDQ4LjkyMTggNDQ2LjI4MiA2Ny4xNDMxIDQ2NC4zMDlDNjguOTYxMSA0NjYuMTA4IDcwLjgwNiA0NjcuODY1IDcyLjY3NzcgNDY5LjU4M0w3My41OTI1IDQ4MS42NjFDNjkuMzA3NCA0NzguMDU1IDY1LjE0OTIgNDc0LjI1NyA2MS4xMTc5IDQ3MC4yNjlaIiBmaWxsPSJ3aGl0ZSIvPgo8cGF0aCBkPSJNMTE4LjE3NSA1MTYuMDY5TDg3LjM5NCAyNDEuOTlIMzI0Ljc2NkwyOTguNzIgNTE2LjA2OUgxMTguMTc1WiIgc3Ryb2tlPSJ3aGl0ZSIgc3Ryb2tlLXdpZHRoPSIxNSIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8cGF0aCBkPSJNOTQuMjc0MyA0MjUuMzEzTDc5LjIxNzggMjk2LjI0M0gzMzMuNjczTDMyMC42MjQgNDI1LjMxM0g5NC4yNzQzWiIgc3Ryb2tlPSJ3aGl0ZSIgc3Ryb2tlLXdpZHRoPSIxMy42NDEzIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+CjxwYXRoIGQ9Ik03My43NzkgMTUxLjE2OEM3MC44MTIxIDE1MS4xNjggNjguMjIxNyAxNTMuMTc3IDY3LjQ4MzUgMTU2LjA1TDU0LjQ2MDYgMjA2Ljc0QzUzLjk2MDYgMjA4LjY4NiA1NC4zODg2IDIxMC43NTQgNTUuNjE5OCAyMTIuMzQxQzU2Ljg1MSAyMTMuOTI5IDU4Ljc0NzEgMjE0Ljg1OCA2MC43NTYxIDIxNC44NThIMzQ5LjYyOEMzNTEuNjc0IDIxNC44NTggMzUzLjYwMSAyMTMuODk0IDM1NC44MjggMjEyLjI1N0MzNTYuMDU2IDIxMC42MiAzNTYuNDQxIDIwOC41IDM1NS44NjcgMjA2LjUzNkwzNDEuMDY5IDE1NS44NDZDMzQwLjI1OSAxNTMuMDc0IDMzNy43MTcgMTUxLjE2OCAzMzQuODI5IDE1MS4xNjhINzMuNzc5WiIgc3Ryb2tlPSJ3aGl0ZSIgc3Ryb2tlLXdpZHRoPSIxMyIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8cGF0aCBkPSJNMjA2LjcxMyA0MDcuNzg0QzIzMy4wNTQgNDA3Ljc4NCAyNTQuNDA4IDM4Ni41MjIgMjU0LjQwOCAzNjAuMjkzQzI1NC40MDggMzM0LjA2NSAyMzMuMDU0IDMxMi44MDMgMjA2LjcxMyAzMTIuODAzQzE4MC4zNzEgMzEyLjgwMyAxNTkuMDE3IDMzNC4wNjUgMTU5LjAxNyAzNjAuMjkzQzE1OS4wMTcgMzg2LjUyMiAxODAuMzcxIDQwNy43ODQgMjA2LjcxMyA0MDcuNzg0WiIgc3Ryb2tlPSJ3aGl0ZSIgc3Ryb2tlLXdpZHRoPSIxMCIvPgo8cGF0aCBkPSJNMTgzLjkyIDM4MC4zNDdDMTg5LjcyNSAzNjYuMjQzIDIwMC4wOTIgMzUzLjcxIDIxMy44OTQgMzQ0LjQ3QzIxMy45NyAzNDQuNDE5IDIxNC4wMDkgMzQ0LjQ4MSAyMTMuOTM5IDM0NC41NDJDMjAwLjcyOSAzNTYuMjc4IDE5MS43NzIgMzcxLjA4NiAxODguMDg0IDM4Ni43N0MxODcuOTYgMzg3LjI5NCAxODcuODQzIDM4Ny44MTcgMTg3LjczMSAzODguMzQzQzE4Ny42ODQgMzg4LjU2MiAxODcuNjQgMzg4Ljc4MSAxODcuNTk1IDM4OC45OTlMMTg3LjU5IDM4OS4wMjVDMTg3LjUwMiAzODkuNDU3IDE4Ny40MjEgMzg5Ljg5IDE4Ny4zNDEgMzkwLjMyMkMxODcuMjkxIDM5MC41OTYgMTg3LjI0IDM5MC44NzEgMTg3LjE5NSAzOTEuMTQ0QzE4Ny4xMzEgMzkxLjUyMiAxODcuMDcxIDM5MS45MDEgMTg3LjAxMiAzOTIuMjc4TDE4Ny4wMDIgMzkyLjM0QzE4Ni45NTYgMzkyLjYzNCAxODYuOTEgMzkyLjkyNiAxODYuODY5IDM5My4yMkMxODYuODI2IDM5My41MjYgMTg2Ljc4OSAzOTMuODMyIDE4Ni43NDkgMzk0LjEzOUMxODYuNjI2IDM5NS4wOTggMTg2LjUxOSAzOTYuMDYgMTg2LjQzNiAzOTcuMDI0TDE4Ni40MzUgMzk3LjA0QzE4Ni4yMzkgMzk5LjMxNCAxODYuMTUyIDQwMS41OTMgMTg2LjE4NCA0MDMuODc4QzE4Ni4yMTMgNDA1LjkyMiAxODcuODA1IDQwNy41NTQgMTg5LjczOSA0MDcuNTI0QzE5MC4xMzUgNDA3LjUxOCAxOTAuNTE0IDQwNy40NDQgMTkwLjg2OCA0MDcuMzExQzE5Mi4yNDIgNDA2Ljc5MyAxOTMuMjE1IDQwNS4zOTUgMTkzLjE5MyA0MDMuNzY3QzE5My4xMyAzOTkuMzQ1IDE5My41NTggMzk0LjkyNiAxOTQuNDM4IDM5MC41NjZDMjAwLjE2MyAzOTIuODk0IDIwNi43OTQgMzkyLjUzIDIxMi4zNTYgMzkwLjQzMkMyMjMuNzkzIDM4Ni4xMTkgMjMwLjg1MSAzNzMuMTA2IDIyNy4xNyAzNjEuMTYyTDIyNy4xNzYgMzYxLjE3N0MyMjQuMjM2IDM1Mi40NyAyMjUuMDM4IDM0My4zMTcgMjI4LjU5NiAzMzUuNzI5QzIyOS40OTQgMzMzLjgxNiAyMjcuOTA3IDMzMy40MzMgMjI3LjA0OSAzMzMuMjg4QzIyMC41NzYgMzMyLjE5MSAyMTMuMTU3IDMzMi44ODUgMjA1Ljc4OCAzMzUuNjY1QzE4OS4xOTEgMzQxLjkyNiAxNzkuOTk0IDM1NC4yODMgMTgxLjIwNyAzNjkuMzAzQzE4MS41NDkgMzczLjY4NyAxODIuNTA5IDM3Ny4zMzkgMTgzLjkyIDM4MC4zNDdaIiBmaWxsPSJ3aGl0ZSIvPgo8cGF0aCBkPSJNMzQ5LjIxIDcuOTYzMzhMMjk0LjUyNiAxMjguNTQzTDM0MS42NjcgMTI4LjU0M0wzOTQuMjUzIDcuOTYzMzhMMzQ5LjIxIDcuOTYzMzhaIiBzdHJva2U9IndoaXRlIiBzdHJva2Utd2lkdGg9IjE1IiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cjwvc3ZnPgo='
      );
    }
    public function lionel_content_settings_page()
    {
      $this->settings->load_page();
    }
  }

wp-content/plugins/lionel-setup-content/admin/class-lionel_content-admin.php

Full code

Last updated