added metabox to be shown with template seccions-wide-extra
This commit is contained in:
parent
3d28a6134a
commit
41ca31554b
|
@ -15,7 +15,7 @@
|
|||
* Author URI: https://vitrubio.net/
|
||||
* License: GPL 3.0
|
||||
* License URI: https://www.gnu.org/licenses/gpl-3.0.html
|
||||
* Text Domain: hangar-wpplugin
|
||||
* Text Domain: hangar-wpplugin-textdomain
|
||||
* Domain Path: /languages
|
||||
*/
|
||||
|
||||
|
@ -54,10 +54,12 @@ include( HANGAR_WPPLUGIN_PATH . 'includes/hangar-stylesheet-admin.php');
|
|||
|
||||
include( HANGAR_WPPLUGIN_PATH . 'includes/hangar-stylesheet-public.php');
|
||||
|
||||
include( HANGAR_WPPLUGIN_PATH . 'includes/hangar-custom-post-type-resources.php');
|
||||
|
||||
include( HANGAR_WPPLUGIN_PATH . 'includes/hangar-tags-and-pages.php');
|
||||
|
||||
//include( HANGAR_WPPLUGIN_PATH . 'includes/hangar-tags-category-shortcode.php'); // outdated from 2012 do not use
|
||||
|
||||
include( HANGAR_WPPLUGIN_PATH . 'includes/hangar-plugin-settings-pannel.php');
|
||||
|
||||
include( HANGAR_WPPLUGIN_PATH . 'includes/hangar-shortcode-metabox-postpage.php');
|
||||
|
||||
// include( HANGAR_WPPLUGIN_PATH . 'includes/hangar-custom-post-type-resources.php');
|
||||
|
||||
// include( HANGAR_WPPLUGIN_PATH . 'includes/hangar-tags-category-shortcode.php'); // outdated from 2012 do not use
|
||||
|
|
|
@ -0,0 +1,150 @@
|
|||
<?php
|
||||
|
||||
/*
|
||||
Plugin Name: The Green Balloon - website options
|
||||
Plugin URI: https://thegreenBalloon.net/
|
||||
Description: All the <strong>options</strong> for <strong>The Green Balloon website</strong> wich do not come by default with wordpress such as: selector for showing post or pages in homepage, the text area to show summary for post and pages, the map archive showing tags from posts.
|
||||
Author: jorge - vitrubio.net
|
||||
Date: 2020 01 10
|
||||
Version: 0.3
|
||||
Author URI: https://vitrubio.net/
|
||||
License: GPL 3.0
|
||||
License URI:https://www.gnu.org/licenses/gpl-3.0.html
|
||||
*/
|
||||
|
||||
|
||||
/* to use in the template
|
||||
* include this code in post/page view
|
||||
*
|
||||
// // Detect plugin. For use on Front End only.
|
||||
// include_once( ABSPATH . 'wp-admin/includes/plugin.php' );
|
||||
// // check for plugin using plugin name
|
||||
// if ( is_plugin_active( 'hangar-wp-plugin/hangar-wp-plugin.php' ) ) {
|
||||
// //plugin is activated do
|
||||
// hangar_show_extra_content();
|
||||
// }
|
||||
*/
|
||||
|
||||
/*
|
||||
if ever read this never forget to check
|
||||
howto write a pluggin by Wordpress.org
|
||||
https://codex.wordpress.org/Writing_a_Plugin
|
||||
and the best practices
|
||||
https://developer.wordpress.org/plugins/plugin-basics/best-practices/
|
||||
*/
|
||||
defined( 'ABSPATH' ) or die( 'No script kiddies please!' );
|
||||
|
||||
|
||||
/* * * * * * * * * * * * * * * * * * * * * * * * * * */
|
||||
/* begin pluggin for SHORT CODES IN PAGE OR POST */
|
||||
/*
|
||||
https://themefoundation.com/wordpress-meta-boxes-guide/
|
||||
*/
|
||||
|
||||
|
||||
// Adds a meta box to the post editing screen
|
||||
if ( ! function_exists( 'hangar_extra_content_add_meta_box' ) ) :
|
||||
function hangar_extra_content_add_meta_box() {
|
||||
add_meta_box(
|
||||
'hangar_extra_content', //$id
|
||||
'Hangar: Show extra content', //$title
|
||||
'hangar_extra_content_callback', //$callback
|
||||
array('post', 'page'), // $screen
|
||||
'normal', // $context // normal,side,advanced
|
||||
'high' // $priority //high, core, default,low
|
||||
);
|
||||
}
|
||||
add_action( 'add_meta_boxes', 'hangar_extra_content_add_meta_box');
|
||||
endif;
|
||||
|
||||
// Outputs the content of the meta box
|
||||
if ( ! function_exists( 'hangar_extra_content_callback' ) ) :
|
||||
function hangar_extra_content_callback( $post ) {
|
||||
wp_nonce_field( basename( __FILE__ ), 'hangar_extra_content_nonce' );
|
||||
$hangar_extra_content_stored_meta = get_post_meta( $post->ID );
|
||||
?>
|
||||
<p>
|
||||
<span class="row hangar-title"><?php _e( 'Estas son las opciones de cada entrada o página de la web.', 'hangar-wpplugin-textdomain' )?></span>
|
||||
<span class="row hangar-title"><?php _e( 'Para mostrar las entradas o páginas debes poner el <pre>[shortcode]</pre> que genera el icono <em>PFC</em> que ves en la barra de edición de texto.', 'hangar-wpplugin-textdomain' )?></span>
|
||||
<div class="row hangar-content">
|
||||
</div>
|
||||
</p>
|
||||
<p>
|
||||
<label for="hangar_extra_content-summary" class="hangar_extra_content-summary-title"><?php _e( 'Escribe el texto que se muestra como resumen en la página principal y en los cuadrados.', 'hangar-wpplugin-textdomain' )?></label>
|
||||
<div id="hangar_extra_content_wysiwyg_summary">
|
||||
<?php
|
||||
// https://codex.wordpress.org/Function_Reference/wp_editor
|
||||
$content = get_post_meta( get_the_ID(), 'hangar_extra_content_wysiwyg_summary', 'edit' );
|
||||
$editor_id = 'hangar_extra_content_wysiwygsummary_ID';
|
||||
$settings = array(
|
||||
'textarea_name' => 'hangar_extra_content_wysiwyg_summary',
|
||||
'media_buttons' => true,
|
||||
'textarea_rows' => 3,
|
||||
// https://www.kevinleary.net/customizing-tinymce-wysiwyg-editor-wordpress/
|
||||
// 'tinymce' => array(
|
||||
// 'toolbar1' => 'formatselect,bold,italic,link,unlink,charmap,removeformat,wp_more',
|
||||
// 'toolbar2' => '',
|
||||
// 'toolbar3' => '',
|
||||
// ),
|
||||
);
|
||||
wp_editor( $content,$editor_id,$settings); ?>
|
||||
</div>
|
||||
</p>
|
||||
<?php
|
||||
}
|
||||
endif;
|
||||
|
||||
// Saves the custom meta input
|
||||
if ( ! function_exists( 'hangar_extra_content_meta_save' ) ) :
|
||||
function hangar_extra_content_meta_save( $post_id ) {
|
||||
|
||||
// Checks save status
|
||||
$is_autosave = wp_is_post_autosave( $post_id );
|
||||
$is_revision = wp_is_post_revision( $post_id );
|
||||
$is_valid_nonce = ( isset( $_POST[ 'hangar_extra_content_nonce' ] ) && wp_verify_nonce( $_POST[ 'hangar_extra_content_nonce' ], basename( __FILE__ ) ) ) ? 'true' : 'false';
|
||||
|
||||
// Exits script depending on save status
|
||||
if ( $is_autosave || $is_revision || !$is_valid_nonce ) {
|
||||
return;
|
||||
}
|
||||
|
||||
// saves the hangar_extra_content_wysiwyg_summary
|
||||
if( isset( $_POST[ 'hangar_extra_content_wysiwyg_summary' ] ) ) {
|
||||
$dattaout=($_POST['hangar_extra_content_wysiwyg_summary']);
|
||||
update_post_meta( $post_id, 'hangar_extra_content_wysiwyg_summary', $dattaout );
|
||||
}else {
|
||||
update_post_meta( $post_id, 'hangar_extra_content_wysiwyg_summary', $_POST[ '' ] );
|
||||
}
|
||||
}
|
||||
add_action( 'save_post', 'hangar_extra_content_meta_save' );
|
||||
endif;
|
||||
|
||||
|
||||
// outputs this archive_map in front end
|
||||
if ( ! function_exists( 'hangar_show_extra_content' ) ) :
|
||||
function hangar_show_extra_content(){
|
||||
// Detect plugin. For use on Front End only.
|
||||
include_once( ABSPATH . 'wp-admin/includes/plugin.php' );
|
||||
// check for plugin using plugin name
|
||||
// https://wordpress.org/plugins/posts-from-category/
|
||||
if ( is_plugin_active( 'posts-from-category/post-from-category.php' ) ) {
|
||||
|
||||
// Retrieves the stored value from the database
|
||||
$meta_value = get_post_meta( get_the_ID(), 'hangar_extra_content_wysiwyg_summary', true );
|
||||
// Checks and displays the retrieved value
|
||||
if( !empty( $meta_value ) ) {
|
||||
echo '<div class="hangar-">';
|
||||
echo $meta_value;
|
||||
echo '</div>';
|
||||
}
|
||||
}
|
||||
|
||||
} // end function hangar_show_extra_content
|
||||
endif;
|
||||
/* * * * * * * *
|
||||
|
||||
|
||||
/* * * * * * * * *
|
||||
|
||||
/* end pluggin for SHORT CODES IN PAGE OR POST */
|
||||
/* * * * * * * * * * * * * * * * * * * * * * * * */
|
Loading…
Reference in New Issue