Pequenos pedaços de código, estendendo a funcionalidade do WordPress. É assim que os trechos podem ser caracterizados em uma frase. Que os módulos também cumprem esse papel? Claro, eles são de natureza muito semelhante, mas dois fatores principais determinam a exclusividade dos snippets: eles não requerem instalação e, devido ao seu volume mínimo, não sobrecarregam o servidor.
Obsah
Como trabalhar com trechos do WordPress?
O local mais comum para armazenar snippets é o arquivo functions.php no tema ativo e pode ser igualmente útil para uso global dentro do arquivo wp-config.php. Basta abrir um editor de texto e adicionar o código apropriado a esses arquivos. Uma certa desvantagem de inserir snippets manualmente é sua conexão com o tema atualmente ativado, com exceção da exceção mencionada acima com wp-config.php.
A solução é o módulo Code Snippets , que funciona de forma sistêmica e no conforto do ambiente administrativo oferece, além da obrigatoriedade de adição, modificação, exclusão de seus próprios códigos, também seu backup via arquivo XML. Snippets individuais podem ser ativados e desativados conforme necessário, Code Snippets também podem ser usados para instalação Multisite e a tradução eslovaca deste módulo será definitivamente um bônus para você.
Snippets do WordPress na prática
Com a crescente popularidade do WordPress, o número de snippets interessantes também está aumentando. A seleção a seguir é um exemplo de várias soluções úteis, alguns links para outros recursos podem ser encontrados no final do artigo.
Este snippet remove o rótulo da versão WP do cabeçalho da página
function remove_wp_version() { return ''; } add_filter('the_generator', 'remove_wp_version');
Vamos inserir jQuery do Google Apis no cabeçalho
if( !is_admin() ){ wp_deregister_script('jquery'); wp_register_script('jquery', ("http://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"), false, ''); wp_enqueue_script('jquery'); }
ou uma fonte com suporte para acentos eslovacos do Google Fonts
function load_fonts() { wp_register_style ('googleFonts', 'http://fonts.googleapis.com/css?family=News+Cycle&subset=latin,latin-ext'); wp_enqueue_style( 'googleFonts'); } add_action('wp_print_styles', 'load_fonts');
Desativaremos a exibição da barra de administração para todos os usuários, exceto administradores
if (!current_user_can('administrator')): show_admin_bar(false); endif;
Editaremos as informações do usuário em seu perfil
function new_contactmethods( $contactmethods ) { $contactmethods['twitter'] = 'Twitter'; // pridame Twitter $contactmethods['facebook'] = 'Facebook'; // pridame Facebook unset($contactmethods['yim']); // odoberieme Yahoo IM unset($contactmethods['aim']); // odoberieme AIM unset($contactmethods['jabber']); // odoberieme Jabber return $contactmethods; } add_filter('user_contactmethods','new_contactmethods',10,1);
Vamos remover widgets predefinidos do WordPress
function unregister_default_widgets() { unregister_widget('WP_Widget_Pages'); unregister_widget('WP_Widget_Calendar'); unregister_widget('WP_Widget_Archives'); unregister_widget('WP_Widget_Links'); unregister_widget('WP_Widget_Meta'); unregister_widget('WP_Widget_Search'); unregister_widget('WP_Widget_Text'); unregister_widget('WP_Widget_Categories'); unregister_widget('WP_Widget_Recent_Posts'); unregister_widget('WP_Widget_Recent_Comments'); unregister_widget('WP_Widget_RSS'); unregister_widget('WP_Widget_Tag_Cloud'); unregister_widget('WP_Nav_Menu_Widget'); unregister_widget('Twenty_Eleven_Ephemera_Widget'); } add_action('widgets_init', 'unregister_default_widgets', 11);
Desativaremos o uso do editor visual
add_filter('user_can_richedit' , create_function('' , 'return false;') , 50);
Escolheremos nosso próprio comprimento da lista de contribuições
custom_excerpt_length($length) { return 100; } add_filter('excerpt_length', 'custom_excerpt_length');
Vamos alterar o redirecionamento depois que o usuário fizer login
add_action('login_form', 'redirect_after_login'); function redirect_after_login() { global $redirect_to; if (!isset($_GET['redirect_to'])) { $redirect_to = get_option('siteurl'); // presmerujeme na homepage } }
Daremos ao autor 7 dias para editar um artigo já publicado
function stop_post_editing_filter( $capauser, $capask, $param){ global $wpdb; $post = get_post( $param[2] ); if( $post->post_status == 'publish' ){ // obmedzenie bude platit pre rolu Autor if( $capauser['author'] == 1 ){ if( ( $param[0] == "edit_post") || ( $param[0] == "delete_post" ) ) { $post_time_unix = strtotime( str_replace('-', ':', $post->post_date ) ); $current_time_unix = time(); $diff = $current_time_unix - $post_time_unix; $hours_after_publication = floor( $diff / 60 / 60 ); // po 168 hodinach od publikovania bude automaticky vypnuta moznost dalsej upravy prispevku if( $hours_after_publication >= 168 ){ foreach( (array) $capask as $capasuppr) { if ( array_key_exists($capasuppr, $capauser) ) { $capauser[$capasuppr] = 0; } } } } } } return $capauser; } add_filter('user_has_cap', 'stop_post_editing_filter', 100, 3 );
Vamos definir o intervalo de salvamento automático do post para 10 minutos – 60 segundos x 10 (no arquivo wp-config.php)
define('AUTOSAVE_INTERVAL', 600);
Desabilitar revisões de postagem (em wp-config.php)
define('WP_POST_REVISIONS', false);
Ou definimos o limite de pós-revisão para 5
define('WP_POST_REVISIONS', 5)
Esvaziamos automaticamente a Lixeira a cada 5 dias (no arquivo wp-config.php)
define('EMPTY_TRASH_DAYS', 5 );
Vamos inserir um link para editar o post (por exemplo, em arquivos single.php ou page.php)
<?php edit_post_link ('Upraviť príspevok'); ?>
As fontes mais famosas de snippets do WordPress
Para trás, para trás, para trás!
A lei de Murpy é clara: quanto maior o erro no código, mais inesperado ele será. Para evitar possíveis complicações, não esqueça de fazer um backup do arquivo editado e do banco de dados.
Você criou seus próprios trechos ou descobriu alguns interessantes enquanto navegava na internet? Escreva-nos sobre isso nos comentários.
Was this article helpful for you? Support me by sharing, please. 👍