API 集成到 wordpress

API integration into wordpress

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

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

?>

我通过将它放在 child 主题的 header.php 文件中对其进行了测试,它在 header 中输出了我想要的结果,但在其他任何地方都没有找到在我输入时在网站上说 echo $character->name;

最后,我只希望人们能够在个人资料页面中输入他们的角色 name/world,并在单独的选项卡中显示来自 $character 变量的数据:)

我已经搜索和填充了大约一个星期了....我是否将其放入 header.php...也许是主题 function.php...我已经尝试过但还没有'成功地做到了。有什么建议吗?

In the end i just want people to be able to enter their character name/world in the profile page and within a separate tab the data from the $character variable will show

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

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

此示例将显示 member-header 文件中的磁石字段值: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');