【问题标题】:How to change the posts category with a button click如何通过单击按钮更改帖子类别
【发布时间】:2019-08-22 19:29:11
【问题描述】:

我正在尝试创建一个“已批准”按钮,以将帖子类别从当前类别更改为“已批准”类别。我不介意它是否重新加载页面。之后我还想将页面重定向到原始类别中的下一篇文章。

我已经发现了一些关于这方面的问题,但最终迷失了如何将这一切整合在一起并发挥作用。

<?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;
}?>

【问题讨论】:

  • 必须是表格吗?为什么不只创建一个 html 按钮或链接并链接到已批准的页面 slug?
  • 不需要是表格。但是按钮确实需要更改类别。更改类别后,它会将其从用户列表中删除。

标签: php wordpress categories


【解决方案1】:

我想通了。虽然这对我来说是一个令人头疼的问题。如果其他人有同样的问题,请注意下面的代码。您必须创建选择,然后在您希望帖子更改到的类别上使用“已选择”选项。然后,在 CSS 中,隐藏选择输入,只留下按钮。

<?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 );
} ?>

【讨论】:

    猜你喜欢
    • 2023-03-23
    • 2020-12-30
    • 2018-11-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-12-15
    • 2014-04-17
    • 1970-01-01
    相关资源
    最近更新 更多