Catégorie 'PHP'


Bugs début de l'année: WordPress et WPML get_page_by_path mise à jour ()

L'année 2012 a commencé avec quelques heures de profonde débogage en raison de deux (connues) des bugs assez ennuyeux. , con la globale (e famosa) omonima istanza $wpdb . La première, entre autres choses, plutôt daté, présent dans le noyau de WordPress sur la méthode update() de classe wpdb , avec la planète (et célèbre) instance du même nom $wpdb . Le défaut apparaît lorsque vous essayez de mettre à jour un champ à NULL . Malgré les nombreuses plaintes, l'équipe de développement de WordPress ne semble pas trouver une solution au problème ennuyeux. En fait, à ce jour, la seule solution est d'écrire le code SQL pour votre compte.

Suite ...

Snippet WordPress: Le save_post d'action

Lorsque vous ajoutez des champs supplémentaires pour les pages et de poste, ou pour obtenir Tapez Message personnalisé ( CTP ), vous devez enregistrer une action pour sauver ces nouvelles données. La mise en œuvre de cette procédure est essentiellement toujours les mêmes, en changeant seulement les champs et comment enregistrer les données peuvent résider dans l'extra "champ personnalisé", c'est à dire après la moitié de la table, ou les tables d'une ou de plus personnel.

Suite ...

Snippet Wordpress: is_page () Type de poste de douane

Si vous avez enregistré votre propre type de message personnalisé ( CPT ), surtout si vous tapez 'page', vous pourraient servir à déterminer si vous affichez cette page particulière, le «unique» pour ainsi dire. . Dans ce cas il est inutile d'essayer is_page() ou is_page_template() . La solution propre est comme suit:

1
2
3
4
5
6
is_singular ( 'cpt_key' ) ) { if (is_singular ('cpt_key ")) {
; globale $ post;
$post -> post_name == 'slug_pagina' ) { if ($ post - post_name> == 'slug_pagina') {
/ / Votre code ici ... add_action type (), wp_enqueue_scripts (), etc ...
}
}

Suite ...

WordPress 3.3: maintenant tous jQuery

Avec WordPress 3.3 a également jQuery et tous ses modules ont été alignées. Maintenant, il est possible d'accéder à la nouvelle liste des modules de la dernière version 3.3, telles que la saisie semi-automatique. Voici un extrait d'une inclusion bonne:

1
2
3
4
5
6
/ / Chargement de modules que WordPress pour nous préparatoires au script "MyScript.js"
array ( 'jquery-ui-slider' , Deps $ = array ('jquery-ui-slider ",
«Jquery-ui-datepicker,
«Jquery-ui-autocomplete '
);
, 'js/myscript.js' , $deps , 1 . 3 . 4 , true ) ; wp_enqueue_script ('key', 'js / MyScript.js, deps $, 1 3 .. 4, true);

Suite ...

Snippet WordPress: ajouter des styles et des scripts pour Type de message personnalisé

Maintenant que WordPress vous permet de créer des types de poste de douane (CPT), il devient utile de pouvoir ajouter nos styles et nos script lorsque vous affichez ou modifiez nos postes. La meilleure façon de faire qui est compatible avec version 3.3 est la suivante:

1
2
3
4
5
6
7
, function ( ) { add_action ('admin_enqueue_scripts', function () {
; global $ typenow;
$typenow == 'id_custom_post' ) { if ($ typenow == 'id_custom_post') {
, 'css/customstyle.css' ) ; wp_enqueue_style ('key_style »,« css / customstyle.css');
, 'js/customscript.js' ) ; wp_enqueue_script ('key_script', 'js / customscript.js');
}
});

Suite ...

Snippet WordPress: src miniature

WordPress vous permet d' associer une vignette pour un poste , une page ou après personnalisés. , che restituiscono il completo tag img , risulta meno intuitivo come ottenere il solo link: S'il est facile d'extraire le code image entière, grâce à des fonctionnalités the_post_thumbnail() ou get_the_post_thumbnail , qui renvoient l'étiquette complète img , moins intuitif est de savoir comment obtenir le lien unique:

1
2
3
4
/ / Si $ post_id est l'id de la poste
get_post_thumbnail_id ( $post_id ) ; Image_id $ = get_post_thumbnail_id ($ post_id);
wp_get_attachment_image_src ( $image_id , 'full' ) ; $ Image = wp_get_attachment_image_src (image_id $, 'full');
[ 0 ] echo $ image [0]

Suite ...

WordPress Supprimer le message

WordPress vous permet d'intercepter quand un poste - même type personnalisé - est éliminé. . Il ya deux crochets d'action qui peuvent être utilisés: delete_post et deleted_post . En première analyse, l'ancien doit être attribué à un "est éliminé" le poste, même si elle ne semble pas être, ou mieux.

Suite ...

Trier un tableau de tableaux en PHP

vista in WordPress: ordinare una serie di post per un campo qualsiasi può essere utilizzata facilmente anche per ordinare array di array . Fonction PHP usort ( ) vu dans Wordpress: commander une série de postes pour n'importe quel domaine peut être utilisé pour trier facilement des tableaux de tableaux. Par exemple, si nous avons:

1
2
3
4
5
6
7
8
9
array ( $ Args = array (
'nome' => 'mike' , 'anno' => 2001 ) , array ('nom' => 'Mike', 'année' => 2001),
'nome' => 'frank' , 'anno' => 2010 ) , array ('nom' => 'Frank', 'année' => 2010),
...
);

$args , function ( $a , $b ) { usort ($ args, la fonction ($ a, $ b) {
$a [ 'anno' ] > $b [ 'anno' ] ) ; return ($ a ['annee']> $ b ['annee']);
});

Suite ...

Très court extrait: ensemble des fichiers journaux sur WordPress

si attivano i log a video prodotti da PHP, riempiendo lo schermo di Notice, Warning e quant'altro. En réglant le fichier wp-config.php définir le define('WP_DEBUG', true); journaux sont activés par les produits de PHP-écran, remplissant l'écran, Avis, Avertissement, et plus encore. Si les contrôles de "voler" ce qui peut être utile dans les situations d'exercice est fortement recommandé, pour des raisons évidentes. Heureusement, WordPress lui permet de «transmettre», ces journaux dans un fichier, qui par défaut est placé dans /wp-content/debug.log .

Suite ...

MySQL: sélectionnez pagination aléatoire

Sélectionnez une gamme de lignes d'une table au hasard est aussi facile à utiliser ORDER BY RAND() dans notre déclaration de sélectionner. Certains préfèrent également d'utiliser des techniques différentes, allant de l'utilisation de PHP pour écrire la sélection spéciale. La raison est que ORDER BY RAND() est lent parce que MySQL crée une table temporaire avec tous les résultats et attribue ensuite chaque ligne d'un indice aléatoire, renvoyant un résultat ordonné (au hasard)!

Suite ...