API集成到wordpress中

时间:2015-10-11 05:44:30

标签: php wordpress api integration

我在游戏网站上工作,我想将api合并到buddypress / wordpress wesbite中。

https://github.com/viion/XIVPads-LodestoneAPI

麻烦我有它实际开始的地方......他们给出的例子,我修改了它,所以当输入2个字段时($ ff14& $ ff14world)它会搜索它。

<?php 
require 'api-autoloader.php';
$api = new Viion\Lodestone\LodestoneAPI();
$ff14 = bp_get_member_profile_data( 'field=Character' );
$ff14world = bp_get_member_profile_data( 'field=World' );

// Search by: name + world
$character = $api->Search->Character($ff14, $ff14world);

// Basic data
echo $character->name;
echo $character->world;
//var_dump( $character->classjobs );

?>

我通过将它放在子主题的header.php文件中进行测试,然后在标题中输出我想要的结果,但是当我输入说echo $character->name;时,它在网站上的任何其他地方都没有被选中

最后,我只希望人们能够在个人资料页面中输入他们的角色名称/世界,并且在单独的标签中,$character变量中的数据将显示:)

我一直在搜索和填充大约一个星期....我把它放在header.php ...也许主题function.php ....我尝试但没有成功完成它。有什么提示吗?

  • 贾斯汀

1 个答案:

答案 0 :(得分:0)

  

最后我只希望人们能够进入他们的角色   配置文件页面中的名称/世界以及单独的选项卡中的数据   $ character变量将显示

单独的标签在哪里?在会员的个人资料页面上? Adding a profile tab example。 将代码放在主题标题中是非常低效的。

此功能bp_get_member_profile_data用于查看会员页面时使用。它假定成员id是显示的成员 - 除非你传递另一个id。要检索成员页面“外部”的个人资料数据,请使用function xprofile_get_field_data( $field, $user_id = 0, $multi_format = 'array' )

此示例将在member-header文件中显示lodestone字段值:buddypress\bp-templates\bp-legacy\buddypress\members\single\member-header.php

此代码可以在你的theme / functions.php或者plugins / bp-custom.php中找到

function justin_show_lodestone() {
     require 'api-autoloader.php';  // adjust path as necessary
     $api = new Viion\Lodestone\LodestoneAPI();
     $ff14 = bp_get_member_profile_data( 'field=Character' );
     $ff14world = bp_get_member_profile_data( 'field=World' );

     // Search by: name + world
     $character = $api->Search->Character($ff14, $ff14world);

     // Basic data
     echo $character->name;
     echo $character->world;

}
add_action('bp_profile_header_meta', 'justin_show_lodestone');