Add editor dropdown button for shortcodes

This commit is contained in:
Brian Miyaji
2014-07-11 09:47:20 +10:00
parent 7562fbfa20
commit da3bf43787
7 changed files with 223 additions and 15 deletions

View File

@@ -72,4 +72,30 @@
font-family: sportspress, dashicons !important;
width: 20px;
text-align: center;
}
.wp-media-buttons .add_sportspress span.wp-media-buttons-icon:before {
font: normal 20px/1 sportspress, dashicons;
speak: none;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
content: '\f111';
}
i.mce-i-sp_shortcodes_button:before, span.mce_sp_shortcodes_button:before {
font-family: 'sportspress';
speak: none;
font-style: normal;
font-weight: normal;
font-variant: normal;
text-transform: none;
line-height: 1;
/* Better Font Rendering =========== */
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
text-align: center;
content: "\f111";
font-size: 20px;
}

View File

@@ -0,0 +1,17 @@
<?php
$strings = 'tinyMCE.addI18n({' . _WP_Editors::$mce_locale . ':{
sportspress:{
insert: "' . esc_js( __( 'SportsPress shortcodes', 'sportspress' ) ) . '",
countdown: "' . esc_js( __( 'Countdown', 'sportspress' ) ) . '",
event_details: "' . esc_js( __( 'Event Details', 'sportspress' ) ) . '",
event_results: "' . esc_js( __( 'Event Results', 'sportspress' ) ) . '",
event_performance: "' . esc_js( __( 'Event Performance', 'sportspress' ) ) . '",
event_calendar: "' . esc_js( __( 'Event Calendar', 'sportspress' ) ) . '",
event_list: "' . esc_js( __( 'Event List', 'sportspress' ) ) . '",
event_blocks: "' . esc_js( __( 'Event Blocks', 'sportspress' ) ) . '",
league_table: "' . esc_js( __( 'League Table', 'sportspress' ) ) . '",
player_list: "' . esc_js( __( 'Player List', 'sportspress' ) ) . '",
player_gallery: "' . esc_js( __( 'Player Gallery', 'sportspress' ) ) . '"
}
}})';

74
assets/js/admin/editor.js Normal file
View File

@@ -0,0 +1,74 @@
/* global tinymce */
( function () {
tinymce.PluginManager.add( 'sp_shortcodes_button', function( editor, url ) {
var ed = tinymce.activeEditor;
editor.addButton( 'sp_shortcodes_button', {
title: ed.getLang('sportspress.insert'),
text: false,
icon: false,
type: 'menubutton',
menu: [
{
text: ed.getLang( 'sportspress.countdown' ),
onclick: function() {
editor.insertContent( '[countdown id="" live=""]' );
}
},
{
text: ed.getLang( 'sportspress.event_details' ),
onclick: function() {
editor.insertContent( '[event_details id=""]' );
}
},
{
text: ed.getLang( 'sportspress.event_results' ),
onclick: function() {
editor.insertContent( '[event_results id=""]' );
}
},
{
text: ed.getLang( 'sportspress.event_performance' ),
onclick: function() {
editor.insertContent( '[event_performance id=""]' );
}
},
{
text: ed.getLang( 'sportspress.event_calendar' ),
onclick: function() {
editor.insertContent( '[event_calendar id="" status="default" show_all_events_link="0"]' );
}
},
{
text: ed.getLang( 'sportspress.event_list' ),
onclick: function() {
editor.insertContent( '[event_list id="" status="default" show_all_events_link="0"]' );
}
},
{
text: ed.getLang( 'sportspress.event_blocks' ),
onclick: function() {
editor.insertContent( '[event_blocks id="" status="default" show_all_events_link="0"]' );
}
},
{
text: ed.getLang( 'sportspress.league_table' ),
onclick: function() {
editor.insertContent( '[league_table id="" number="-1" show_team_logo="1" link_posts="0" show_full_table_link="0"]' );
}
},
{
text: ed.getLang( 'sportspress.player_list' ),
onclick: function() {
editor.insertContent( '[player_list id="" number="-1" orderby="default" order="ASC" show_all_players_link="0"]' );
}
},
{
text: ed.getLang( 'sportspress.player_gallery' ),
onclick: function() {
editor.insertContent( '[event_blocks id="" number="-1" columns="3" orderby="default" order="ASC" size="thumbnail" show_all_players_link="0"]' );
}
}
]
});
});
})();

View File

@@ -366,5 +366,4 @@ jQuery(document).ready(function($){
$this.find('strong').html(event.strftime("%D "+localized_strings.days+" %H:%M:%S"));
});
});
});