if ( id != 451 || id != 791 )
if ( (id != 451) && (id != 791) )
wp_enqueue_style('theme-reser-style', STYLES_PATH . '/reset.min.css', array(), filemtime(STYLES_DIR . '/reset.min.css'));
www.examle.com и example.com
example.com/ и example.com
https и http
add_action( 'admin_print_footer_scripts', 'theme_add_quicktags', 99 );
function theme_add_quicktags() {
if ( ! wp_script_is('quicktags') )
return;
?>
<script>
document.addEventListener( 'DOMContentLoaded', function(){
QTags.addButton( 'r4_div_blue', 'div_blue', '<div class="color-blue">', '</div>', 'd', 'Div blue', 1 );
QTags.addButton( 'r4_h3_blue', 'h3_blue', '<h3 class="color-blue">', '</h3>', 'h', 'H3 blue', 2 );
QTags.addButton( 'r4_ol_lg', 'ol_lg', '<ol class="lg-list">', '</ol>', 'o', 'Ol lg', 3 );
} );
</script>
<?php
}
//QTags.addButton( id, display, arg1, arg2, access_key, title, priority, instance );
(function() {
tinymce.create('tinymce.plugins.theme_buttons', {
init : function(ed, url) {
ed.addButton('r4_div_blue', {
title : 'Div blue',
icon: 'mce-ico mce-i-checkmark', // использование иконки Dashicons
onclick : function() {
ed.execCommand('mceInsertContent', false, '<div class="color-blue"></div>');
ed.label = 'Div blue';
}
});
ed.addButton('r4_h3_blue', {
title : 'H3 blue',
icon: 'mce-ico mce-i-checkmark', // использование иконки Dashicons
onclick : function() {
ed.execCommand('mceInsertContent', false, '<h3 class="color-blue"></h3>');
ed.label = 'H3 blue';
}
});
ed.addButton('r4_ol_lg', {
title : 'Ol lg',
icon: 'mce-ico mce-i-checkmark', // использование иконки Dashicons
onclick : function() {
ed.execCommand('mceInsertContent', false, '<ol class="lg-list"><li></li></ol>');
ed.label = 'Ol lg';
}
});
}
});
tinymce.PluginManager.add('theme_buttons', tinymce.plugins.theme_buttons);
})();
function theme_tinymce_plugin($plugin_array) {
$plugin_array['theme_buttons'] = get_template_directory_uri() . '/assets/js/tinymce-buttons.js?v=17'; // путь к вашему JS файлу
return $plugin_array;
}
function theme_register_buttons($buttons) {
array_push($buttons, 'r4_div_blue', 'r4_h3_blue', 'r4_ol_lg');
return $buttons;
}
<?php
add_filter( 'upload_mimes', 'svg_upload_allow' );
# Добавляет SVG в список разрешенных для загрузки файлов.
function svg_upload_allow( $mimes ) {
$mimes['svg'] = 'image/svg+xml';
return $mimes;
}
add_filter( 'wp_check_filetype_and_ext', 'fix_svg_mime_type', 10, 5 );
# Исправление MIME типа для SVG файлов.
function fix_svg_mime_type( $data, $file, $filename, $mimes, $real_mime = '' ){
// WP 5.1 +
if( version_compare( $GLOBALS['wp_version'], '5.1.0', '>=' ) ){
$dosvg = in_array( $real_mime, [ 'image/svg', 'image/svg+xml' ] );
}
else {
$dosvg = ( '.svg' === strtolower( substr( $filename, -4 ) ) );
}
// mime тип был обнулен, поправим его
// а также проверим право пользователя
if( $dosvg ){
// разрешим
if( current_user_can('manage_options') ){
$data['ext'] = 'svg';
$data['type'] = 'image/svg+xml';
}
// запретим
else {
$data['ext'] = false;
$data['type'] = false;
}
}
return $data;
}
# ограничиваем размер загружаемых файлов по типу
add_filter( 'wp_handle_sideload'.'_prefilter', 'check_file_upload_size' );
add_filter( 'wp_handle_upload'.'_prefilter', 'check_file_upload_size' );
function check_file_upload_size( $file ){
// для SVG
if( false !== strpos( $file['type'], 'image/svg+xml') ){
$size_limit = 2048; // макс размер в KB
}
// для всех остальных картинок
elseif( false !== strpos( $file['type'], 'image') ){
$size_limit = 4096;
}
if( isset($size_limit) ){
$size_limit *= 1024;
if( intval($file['size']) > $size_limit )
$file['error'] = 'ERROR: Размер этого типа файлов не может превышать '. size_format( $size_limit );
}
return $file;
}