我可以从我的前端撰写和发布帖子——一切都很好。你知道后端:写文章风格,对吗?在那里,它列出了所有现有的标记。
如何在前端显示所有现有标记并以与后端相同的方式使用它?尤其是“点击一个现有标签”并将其用于我目前正在撰写的帖子?
顺便说一下:我想使用自定义分类法中名为“wissen”的标记。。。
你知道一个解决方案,如何在前端使用这个功能吗?
这是我的代码:(你可以看到,我现在是如何做标记的,我希望代码非常重要[我真正的文件有更多的代码])
“我的表单”页面开头的代码:
if( \'POST\' == $_SERVER[\'REQUEST_METHOD\'] && !empty( $_POST[\'action\'] ) && $_POST[\'action\'] == "new_post") {
$title = $_POST[\'title\'];
$description = $_POST[\'description\'];
$tags = $_POST[\'post_tags\'];
$new_post = array(
\'post_title\' => $title,
\'post_content\' => $description,
\'post_category\' => array($_POST[\'cat\']), // Usable for custom taxonomies too
\'tags_input\' => array($tags),
\'post_status\' => \'publish\', // Choose: publish, preview, future, draft, etc.
\'post_type\' => \'wissen\' //\'post\',page\' or use a custom post type if you want to
);
//SAVE THE POST
$pid = wp_insert_post($new_post);
//SET OUR TAGS UP PROPERLY
wp_set_post_tags($pid, $_POST[\'post_tags\']);
//POST THE POST
do_action(\'wp_insert_post\', \'wp_insert_post\');
}
在我的身体里:
<form id="new_post" name="new_post" method="post" action="" enctype="multipart/form-data">
<?php wp_dropdown_categories( \'tab_index=10&taxonomy=category&hide_empty=0\' ); ?>
<textarea id="description" name="description"></textarea>
<textarea id="post_tags" name="post_tags"></textarea>
<input type="hidden" name="action" value="new_post" />
<input type="submit" value="Eintragen" id="submit" name="submit" />
</form>
SO网友:Nicolai Grossherr
尝试以下操作:
<?php
$taxonomies = array(
\'wissen_tags\'
);
$args = array(
\'orderby\' => \'name\',
\'order\' => \'ASC\',
\'hide_empty\' => false
);
$terms = get_terms($taxonomies,$args);
if (count($terms) > 0):
i = 0;
foreach ($terms as $term): ?>
<div class="wissen_tag_list">
<input type="radio" value="<?php echo $term->term_id; ?>" name="wissen_tags" class="wissen_tag_list_ckb" <?php if ( $i == 0 ) { ?>checked<?php } ?>>
<label class="wissen_tag_list_ckbl">
<?php echo $term->name; ?>
</label>
</div>
<?php
$i++; endforeach;
endif; ?>
当然,如果您有许多标记,您可能会考虑更动态的方法,例如通过Ajaxing输入;并且不总是显示完整的列表。
注:
→ 您可能必须使上述代码更好地符合您的标准/参数,但不确定我是否正确捕获了它们
→ 此外,上述代码用于选择单个术语;
编辑:用于多选
更改type
到checkbox
; 和makename
- 分别对应的$\\u POST变量-一个数组
<input type="checkbox" value="<?php echo $term->term_id; ?>" name="wissen_tags[]" class="wissen_tag_list_ckb">