functions.php
Afegir contingut automàticament a l’editor d’entrades
Si su dels que us agrada mantenir sempre la mateixa estructura a les entrades, o teniu un bloc dedicat exclusivament a un tema en concret on totes les entrades tinguin la mateixa estructura (per exemple, un bloc per a temes de WordPress, o per discos…) estic segur que aquest codi us anirà com anell al dit.
L’he vist a TodoWP, i val a dir que m’ha semblat molt útil. Fa temps vaig trobar una manera de fer-ho, però s’havia de modificar un arxiu del nucli de WordPress, cosa que comportava la pèrdua de la funcionalitat a cada actualització. Amb aquest, en canvi, només cal afegir el codi a l’arxiu functions.php:
<?php // auto-insert content to post editor function my_editor_content($content) { $content = "<h5>Gràcies per llegir i fins la setmana que ve!</h5>."; return $content; } add_filter('default_content', 'my_editor_content'); ?>
El text és un exemple d’un agraïment que es podria posar al peu de cada entrada, però es pot modificar aquest text al vostre gust fent servir HTML.
Insereix text automàticament a l’editor de text
Magnífic, súper-útil per quan has d’escriure el mateix text en moltes entrades:
<?php add_filter( 'default_content', 'my_editor_content' ); function my_editor_content( $content ) { $content = "Text o codi HTML que volem per defecte"; return $content; } ?>
Simplement hem de canviar Text o codi HTML que volem per defecte pel nostre text i copiar el codi a l’arxiu functions.php
Amaga el missatge per actualitzar WordPress
Cada cop que apareix una nova versió de WordPress, a l’administració del blog apareix un missatge instant-nos a actualitzar. actualment podem fer que WordPress ignori l’actualització actual, però el procés és manual i s’ha de repetir amb cada nova actualització.
A WpRecipes hi ha un codi per fer que el missatge no aparegui mai més:
if ( !current_user_can( 'edit_users' ) ) { add_action( 'init', create_function( '$a', "remove_action( 'init', 'wp_version_check' );" ), 2 ); add_filter( 'pre_option_update_core', create_function( '$a', "return null;" ) ); }
Limita la llargada dels extractes
A Ayuda WordPress posen un codi molt útil en cas que vulguem limitar el nombre màxim de paraules del cos d’una entrada que es vegin a la pàgina principal.
Per fer-ho, podeu fer servir l’extensió Content and Excerpt Word Limit, o fer servir el codi següent a l’arxiu functions.php del teu tema:
function excerpt($num) { $limit = $num+1; $excerpt = explode(' ', get_the_excerpt(), $limit); array_pop($excerpt); $excerpt = implode(" ",$excerpt)."..."; echo $excerpt; } function content($num) { $theContent = get_the_content(); $output = preg_replace('/<img[^>]+./','', $theContent); $limit = $num+1; $content = explode(' ', $output, $limit); array_pop($content); $content = implode(" ",$content)."..."; echo $content; }
En tots dos casos, per implementar la funcionalitat en el teu tema hauràs de substituir les funcions the_excerpt() o the_content() per excerpt('25'), canviant 25 pel nombre de paraules que vulguem mostrar.
Canvia l’URL d’una entrada segons un camp personalitzat
WordPress és realment molt personalitzable. Per exemple, podem crear un gestor d’enllaços preferits on posar enllaços que ens puguin interessar amb una petita descripció. Això, òbviament, ho podem fer posant l’enllaç al cos de l’entrada i ja està, però què tal si posem l’enllaç al títol de l’entrada? És a dir, què us semblaria posar l’enllaç que ens interessa al títol de l’entrada en lloc de l’enllaç a l’entrada?
Sé que la idea sembla un pèl complicada, però en realitat no ho és. Podem fer servir aquest codi creat per Vlad Grubman que busca el valor dels camps personalitzats urll, title_url o url_title (tots alhora) i el posa en l’enllaç. Copio el codi tal i com el vaig trobar. Com sempre, per a fer-lo servir l’heu de col·locar al vostre arxiu functions.php:
/*
* This function outputs post title and
* links it either to posts's permalink
* (default WordPress behavior) or to
* external link supplied in custom field
* that should have any of the following names:
* url1, title_url, url_title. The value of
* the custom key should be the target URL.
* Example: 'url1' = 'http://www.istudioweb.com/'
*
* (C) 2008 by Vlad Grubman, www.istudioweb.com
* Updated 11/14/2008 - updated way to get permalink
*
*/
function print_post_title() {
global $post;
$thePostID = $post->ID;
$post_id = get_post($thePostID);
$title = $post_id->post_title;
$perm = get_permalink($post_id);
$post_keys = array(); $post_val = array();
$post_keys = get_post_custom_keys($thePostID);
if (!empty($post_keys)) {
foreach ($post_keys as $pkey) {
if ($pkey=='url1' || $pkey=='title_url' || $pkey=='url_title') {
$post_val = get_post_custom_values($pkey);
}
}
if (empty($post_val)) {
$link = $perm;
} else {
$link = $post_val[0];
}
} else {
$link = $perm;
}
echo '<h3><span><?php the_time($datetitol) ?></span><span class="title"><a href="'.$link.'" rel="bookmark" title="'.$title.'">'.$title.'</a></span></h3>';
}Ara hem d’editar l’arxiu (o arxius) on vulguem que aparegui aquest nou enllaç (index.php, single.php… per exemple). Haurem de buscar la línia de dins del loop que diu alguna cosa semblant a:
<a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title(); ?>"><?php the_title(); ?></a>
I canviar-la per això:
<?php print_post_title() ?>
Jo he fet servir aquest codi en un altre blog i funciona a la perfecció. Simplement heu de crear un camp personalitzat des de l’editor d’entrades que es digui urll, title_url o url_title i posar-hi com a valor l’adreça sencera que volem.
Subscriu-te al feed!
Saps que només hi ha 56 persones que ens llegeixen a través del RSS?Fes-ho tu també!
Descàrregues de WordPress
Entrades Populars
- WordPress 2.7.1 acabada de sortir del forn - 3.109 lectures
- WordPress 2.8.1, primera Beta - 2.677 lectures
- Extensions - 2.534 lectures
- Extensió: Post Templates - 2.497 lectures
- MSG Board - 2.360 lectures
- Posa música al teu blog amb GoEar.com - 1.722 lectures
- Benvinguts a Recursos WordPress - 1.550 lectures
- Plugin Events Calendar 6.5.2a - 1.523 lectures
- Nova informació sobre el cas Jazztel/WordPress.com - 1.490 lectures
- Recursos WordPress i WordPressCat, les novetats - 1.410 lectures
Categories
- Actualitzacions
- Allotjament
- bbPress
- Col·laboracions
- Disseny
- Dubtes i peticions dels lectors
- General
- Gràfics
- Habari
- Modificacions
- Notícies
- Novetats
- Plugins
- Posicionament
- Premsa
- Recursos WordPress
- RSS
- Scripts
- Seguretat
- Serveis
- Software
- Temes
- Traducció
- Tutorials
- Widgets
- WordPress
- Wordpress 2.5
- WordPress 2.6
- WordPress 2.7
- WordPress 2.8
- WordPress 2.9
- WordPress 3.0
- WordPress MU
