如何通过单击按钮更改帖子类别
How to change the posts category with a button click
我正在尝试创建一个按钮 "Approved" 以将 post 类别从当前类别更改为 "approved" 类别。我不介意它是否重新加载页面。我还想将页面重定向到原始类别中的下一个 post。
我已经发现了一些与此相关的问题,但最终还是迷失了如何将它们整合在一起并发挥作用。
<?php add_shortcode('approved_button', 'brist_approved_button_function');
function brist_approved_button_function() {
ob_start(); ?>
<form method="post" action="approved.php">
<input type="submit" value="Approved" name="submit"> <!-- assign a name for the button -->
</form>
<?php
wp_set_object_terms( $post_id, intval( $_POST['approved'] ), 'category', false );
$output = ob_get_clean();
return $output;
}?>
我明白了。虽然这让我很头疼。如果其他人遇到同样的问题,请注意下面的代码。您必须创建 select,然后在您希望 post 更改为的类别上使用 'selected' 选项。然后,在CSS中,隐藏select输入,只留下按钮。
<?php add_shortcode('approved_button', 'approved_button_function');?>
<?php function approved_button_function() { ob_start();?>
<div class="approval">
<form action="" id="update-post" method="post">
<?php wp_dropdown_categories( "selected='categoryId'&exclude=21&class=approval-select&show_count=1&hierarchical=1&orderby=name&order=ASC&&hide_empty=0&show_option_all=Choose An Option" ); ?>
<input class="approval-button" type="submit" name="submit" value="Approve" />
</form>
</div>
<?php if ( array_key_exists('cat', $_POST )) {
global $post;
$post_id = $post->ID;
wp_set_object_terms( $post_id, intval( $_POST['cat'] ), 'category', false );
} ?>
我正在尝试创建一个按钮 "Approved" 以将 post 类别从当前类别更改为 "approved" 类别。我不介意它是否重新加载页面。我还想将页面重定向到原始类别中的下一个 post。
我已经发现了一些与此相关的问题,但最终还是迷失了如何将它们整合在一起并发挥作用。
<?php add_shortcode('approved_button', 'brist_approved_button_function');
function brist_approved_button_function() {
ob_start(); ?>
<form method="post" action="approved.php">
<input type="submit" value="Approved" name="submit"> <!-- assign a name for the button -->
</form>
<?php
wp_set_object_terms( $post_id, intval( $_POST['approved'] ), 'category', false );
$output = ob_get_clean();
return $output;
}?>
我明白了。虽然这让我很头疼。如果其他人遇到同样的问题,请注意下面的代码。您必须创建 select,然后在您希望 post 更改为的类别上使用 'selected' 选项。然后,在CSS中,隐藏select输入,只留下按钮。
<?php add_shortcode('approved_button', 'approved_button_function');?>
<?php function approved_button_function() { ob_start();?>
<div class="approval">
<form action="" id="update-post" method="post">
<?php wp_dropdown_categories( "selected='categoryId'&exclude=21&class=approval-select&show_count=1&hierarchical=1&orderby=name&order=ASC&&hide_empty=0&show_option_all=Choose An Option" ); ?>
<input class="approval-button" type="submit" name="submit" value="Approve" />
</form>
</div>
<?php if ( array_key_exists('cat', $_POST )) {
global $post;
$post_id = $post->ID;
wp_set_object_terms( $post_id, intval( $_POST['cat'] ), 'category', false );
} ?>