gpt4 book ai didi

c# - 使用 WP Rest API Request C# 添加 SEO

转载 作者:塔克拉玛干 更新时间:2023-11-03 02:34:28 26 4
gpt4 key购买 nike

我正在使用 WP Rest API v2 在 Wordpress 上发帖,并使用 All In One SEO Pack 进行 SEO,但我没有知道我应该给什么参数来添加元标题元描述元标签。我有以下代码:

var request = (HttpWebRequest)WebRequest.Create(Website + "wp-json/wp/v2/posts/");
request.Headers["Authorization"] = "Bearer " + token;
request.Method = "POST";
request.UseDefaultCredentials = true;

var postData = "title=" + Title +
"&content=" + Content + // HTML Code
"&status=publish" +
"&date=" + TimeZone.CurrentTimeZone.ToUniversalTime(date).ToString("yyyy-MM-ddTHH:mm:ss");

var data = Encoding.ASCII.GetBytes(postData);
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = data.Length;

using (var stream = request.GetRequestStream())
stream.Write(data, 0, data.Length);

try
{
var response = (HttpWebResponse)request.GetResponse();
var responseString = new StreamReader(response.GetResponseStream()).ReadToEnd();
var json = JObject.Parse("{" + JObject.Parse(responseString)["guid"].First + "}");
LOG.Text = "Post posted at " + json["rendered"].ToString();
list.Add(json["rendered"].ToString());
}
catch (Exception exception)
{
MessageBox.Show(exception.Message, "Error", MessageBoxButton.OK, MessageBoxImage.Error);
}

最佳答案

WordPress 是建立在 PHP 之上的。所以 WP REST API 插件也是用 PHP 编写的。正如您提到的,您使用的是 WordPress REST api v2。先分享代码位置:WordPress REST api v2

如您所见,此 WP REST API 不包含任何 SEO 内容。

现在您还安装了“all-in-one-seo-pack”插件。 free version不包括内置 API。您可以升级到Pro Version具有内置 API 的“一体式 seo 包”。

或者您可以扩展 WordPress REST api v2你自己通过添加额外的端点。然后自己编写 PHP 代码以通过 REST API 管理您的 SEO 插件。

这并不难 -> 正如 Raunak Gupta 已经告诉您的那样:这些是“一体式 seo 包”中使用的字段。使用其他端点扩展 REST API 以配置它们。然后从 C# 代码调用您的端点。

<wpml-config>
<custom-fields>
<custom-field action="translate">_aioseop_title</custom-field>
<custom-field action="translate">_aioseop_description</custom-field>
<custom-field action="translate">_aioseop_keywords</custom-field>
</custom-fields>
<admin-texts>
<key name="aioseop_options">
<key name="aiosp_home_title" />
<key name="aiosp_home_description" />
<key name="aiosp_home_keywords" />
<key name="aiosp_post_title_format" />
<key name="aiosp_page_title_format" />
<key name="aiosp_category_title_format" />
<key name="aiosp_archive_title_format" />
<key name="aiosp_tag_title_format" />
<key name="aiosp_search_title_format" />
<key name="aiosp_description_format" />
<key name="aiosp_404_title_format" />
<key name="aiosp_paged_format" />
</key>
</admin-texts>
</wpml-config>

查看免费版本中的代码。使用此代码在编写您自己的代码时获得灵感。 WordPress 希望您扩展功能。为社区做贡献!

if ( !function_exists( 'aioseop_ajax_save_meta' ) ) {
function aioseop_ajax_save_meta() {
if ( !empty( $_POST['_inline_edit'] ) && ( $_POST['_inline_edit'] != 'undefined' ) )
check_ajax_referer( 'inlineeditnonce', '_inline_edit' );
$post_id = intval( $_POST['post_id'] );
$new_meta = strip_tags( $_POST['new_meta'] );
$target = $_POST['target_meta'];
check_ajax_referer( 'aioseop_meta_' . $target . '_' . $post_id, '_nonce' );
$result = '';
if ( in_array( $target, Array( 'title', 'description', 'keywords' ) ) && current_user_can( 'edit_post', $post_id ) ) {
update_post_meta( $post_id, '_aioseop_' . $target, esc_attr( $new_meta ) );
$result = get_post_meta( $post_id, '_aioseop_' . $target, true );
} else {
die();
}
if( $result != '' ):
$label = "<label id='aioseop_label_{$target}_{$post_id}'><span style='width: 20px;display: inline-block;'></span>" . $result . '</label>';
else:
$label = "<label id='aioseop_label_{$target}_{$post_id}'></label><span style='width: 20px;display: inline-block;'></span><strong><i>" . __( 'No', 'all-in-one-seo-pack' ) . ' ' . $target . '</i></strong>';
endif;
$nonce = wp_create_nonce( "aioseop_meta_{$target}_{$post_id}" );
$output = '<a id="' . $target . 'editlink' . $post_id . '" class="aioseop_edit_link" href="javascript:void(0);"'
. 'onclick=\'aioseop_ajax_edit_meta_form(' . $post_id . ', "' . $target . '", "' . $nonce . '");return false;\' title="' . __('Edit') . '">'
. '<img class="aioseop_edit_button" id="aioseop_edit_id" src="' . AIOSEOP_PLUGIN_IMAGES_URL . '/cog_edit.png" /></a> ' . $label;
die( "jQuery('div#aioseop_" . $target . "_" . $post_id . "').fadeOut('fast', function() { var my_label = " . json_encode( $output ) . ";
jQuery('div#aioseop_" . $target . "_" . $post_id . "').html(my_label).fadeIn('fast');
});" );
}
}

关于c# - 使用 WP Rest API Request C# 添加 SEO,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40804715/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com