web-dev-qa-db-fra.com

Définir l'option de page de garde à l'aide de champs personnalisés?

Bonjour gourous wordpress!

Je veux être en mesure de définir la page d'accueil via un champ personnalisé.

Ainsi, par exemple, dans la nouvelle zone de page de l’administrateur wordpress, il existe un champ personnalisé qui affiche "Définir comme façade". page.

Je connais les métaboxes et certains codages, mais je ne sais pas comment je pourrais mettre en œuvre cela.

J'ai aussi trouvé cet article sur la programmation de la première page:

http://kuttler.eu/code/set-static-front-page-and-blog-page-programmatically-in-wordpress/

C'est juste la question de le mettre avec le champ personnalisé.

Aide appréciée. Merci

1
Shoebox

Vous pouvez le faire en mettant à jour 2 options.

<?php
    //This could be page or posts.
    update_option('show_on_front', '<posts/page>');

    //This one sets the page you want on front, won't work if the above option is set to 'posts'.
    update_option('page_on_front', '<id of the page you want to set as front page>');
?>

Bien que je ne puisse pas garantir si ceci est sûr et s'il remplacera les paramètres sauvegardés à partir du backend!

1
Rutwick Gangurde

Tout d’abord, la première page est un paramètre d’ensemble du système (par définition). Utiliser une méta post n'est pas le bon choix. Cela dit, vous pouvez utiliser des métaboxes pour mettre à jour les options elles-mêmes. Ce que vous souhaitez peut-être faire est d’afficher une méta-boîte qui affiche la page de couverture actuelle et permet également à l’utilisateur de définir la page actuelle comme page de couverture de votre métabox.

Consultez le fichier options-reading.php pour connaître les clés utilisées pour la page d'accueil et la page de blog.

0