Existe-t-il un moyen d’ajouter un lien source à la fin d’un article tel que TechnoBuffalo (défiler jusqu’à la fin du post) avec un plugin?
Si quelqu'un pouvait trouver un plugin ou en faire rapidement un pour moi, ce serait génial.
C'est à quoi servent les meta_boxes. Vous devez d’abord enregistrer la metabox dans la page ou publier avec la fonction add_meta_box . Ensuite, vous voulez obtenir cette valeur avec get_post_meta sur la page où vous voulez la "source".
Cela va dans votre fichier functions.php:
/* Define the custom box */
add_action( 'add_meta_boxes', 'wpse_source_link' );
/* Do something with the data entered */
add_action( 'save_post', 'wpse_source_link_save' );
/* Adds a box to the main column on the Post and Page edit screens */
function wpse_source_link() {
add_meta_box(
'source_link',
__( 'Source-link', 'myplugin_textdomain' ),
'wpse_source_meta_box',
'post',
'side'
);
}
/* Prints the box content */
function wpse_source_meta_box( $post ) {
// Use nonce for verification
wp_nonce_field( plugin_basename( __FILE__ ), 'myplugin_noncename' );
// The actual fields for data entry
echo '<input type="text" id="source-link"" name="source_link" value="'. get_post_meta( $post->ID, '_source_link', true ) .'" size="25" />';
}
/* When the post is saved, saves our custom data */
function wpse_source_link_save( $post_id ) {
// verify if this is an auto save routine.
// If it is our form has not been submitted, so we dont want to do anything
if ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE )
return;
// verify this came from the our screen and with proper authorization,
// because save_post can be triggered at other times
if ( ! wp_verify_nonce( $_POST['myplugin_noncename'], plugin_basename( __FILE__ ) ) )
return;
// Check permissions
if ( current_user_can( 'edit_post', $post_id ) ) {
update_post_meta( $post_id, '_source_link', $_POST['source_link'] );
}
}
Ce code enregistre la meta_box et stocke la valeur dans post_meta sous la forme "_source_link".
Il ressemblera à ceci:
Ensuite, vous voulez obtenir la valeur dans le post, utilisez get_post_meta:
<?php echo esc_url( get_post_meta( $post->ID, '_source_link', true ) ); ?>
Vous devriez lire sur: add_meta_boxes , update_post_meta et get_post_meta
Vous pouvez utiliser ACF ,
Source: <a href="<?php echo get_field('url_field'); ?>"><?php echo get_field('link_text'); ?></a>