mirror of
https://github.com/10h30/trestle.git
synced 2026-06-05 15:09:35 +09:00
55 lines
1.5 KiB
PHP
55 lines
1.5 KiB
PHP
<?php
|
|
/**
|
|
* Trestle shortcodes
|
|
*
|
|
* @since 1.0.0
|
|
*
|
|
* @package Trestle
|
|
*/
|
|
|
|
/*===========================================
|
|
* Shortcodes
|
|
===========================================*/
|
|
|
|
// Fix for empty <p> tags around shortcodes
|
|
function shortcode_empty_paragraph_fix($content)
|
|
{
|
|
$array = array (
|
|
'<p>[' => '[',
|
|
']</p>' => ']',
|
|
']<br />' => ']'
|
|
);
|
|
|
|
$content = strtr($content, $array);
|
|
|
|
return $content;
|
|
}
|
|
add_filter('the_content', 'shortcode_empty_paragraph_fix');
|
|
|
|
/**
|
|
* Columns - [col class="one-half first no-list-margin"] Contents [/col]
|
|
*
|
|
* Classes:
|
|
* - width (one-half, one-third, etc - uses native Genesis column classes in style.css)
|
|
* - first (used to specify the first column in a row)
|
|
* - no-list-margin (will cause contained list elements to collapse as one on mobile sizes)
|
|
*/
|
|
function trestle_column( $atts, $content = null ) {
|
|
extract( shortcode_atts( array(
|
|
'class' => '',
|
|
), $atts ) );
|
|
return '<div class="col ' . $class . '">' . do_shortcode( $content ) . '</div>';
|
|
}
|
|
add_shortcode( 'col', 'trestle_column' );
|
|
|
|
/**
|
|
* Buttons - [button href="url" class="class"]Text[/button]
|
|
*/
|
|
function trestle_button( $atts, $content = null ) {
|
|
extract( shortcode_atts( array(
|
|
'href' => '#',
|
|
'class' => '',
|
|
), $atts ) );
|
|
return '<a class="button ' . $class . '" href="' . $href . '">' . do_shortcode( $content ) . '</a>';
|
|
}
|
|
add_shortcode( 'button', 'trestle_button' ); |