要在WordPress中使用纯代码实现文章收藏功能,你可以按照以下步骤操作:
创建自定义插件: 首先,你需要创建一个自定义WordPress插件,以便添加收藏功能。你可以在WordPress文件夹的wpcontent/plugins/目录下创建一个新的文件夹,并在其中创建一个PHP文件,比如favoriteposts.php。
编写插件代码: 在favoriteposts.php文件中编写插件代码。以下是一个简单的示例:
<?php
/
Plugin Name: 收藏文章
Description: 允许用户收藏文章。
/
// 添加收藏按钮到文章
function add_favorite_button($content) {
if (is_single()) {
$post_id = get_the_ID();
$favorite_link = '<a href="#" datapostid="' . $post_id . '" class="favoritebutton">收藏文章</a>';
$content .= $favorite_link;
}
return $content;
}
add_filter('the_content', 'add_favorite_button');
// 处理收藏操作
function handle_favorite() {
if (isset($_POST['post_id'])) {
$post_id = intval($_POST['post_id']);
$user_id = get_current_user_id();
// 在这里执行收藏逻辑,比如将文章ID和用户ID存储到数据库中
// 你也可以使用WordPress的用户元数据来跟踪用户的收藏
}
wp_die();
}
add_action('wp_ajax_favorite', 'handle_favorite');
add_action('wp_ajax_nopriv_favorite', 'handle_favorite');
// 添加JavaScript来处理收藏操作
function add_favorite_script() {
wp_enqueue_script('favoritescript', plugin_dir_url(__FILE__) . 'favorite.js', array('jquery'), '1.0', true);
wp_localize_script('favoritescript', 'favorite_vars', array(
'ajax_url' => admin_url('adminajax.php'),
));
}
add_action('wp_enqueue_scripts', 'add_favorite_script');
jQuery(document).ready(function($) {
$('.favoritebutton').on('click', function(e) {
e.preventDefault();
var post_id = $(this).data('postid');
$.ajax({
type: 'POST',
url: favorite_vars.ajax_url,
data: {
action: 'favorite',
post_id: post_id,
},
success: function(response) {
alert('文章已收藏!');
}
});
});
});
这只是一个简单的示例,你可以根据需要扩展它,以便在数据库中跟踪用户的收藏,并添加更多的功能,如显示已收藏文章列表等。不过,这个示例应该帮助你入门如何在WordPress中使用纯代码实现文章收藏功能。