问题标签 [wordpress-plugin-creation]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
56 浏览

php - 文件上传网址

我正在尝试使用 AJAX 将画布图像上传到我的服务器,AJAX 工作正常,但是当我向服务器提供 URL 时,它会对其进行转换并在 URL 的每个文件夹中添加反斜杠,但我不知道如何。我需要它停止将这些反斜杠添加到字符串中。

这就是我希望输出的样子https://example.com/wp-content/plugins/my-plugin/images,这是当前输出https:\/\/example.com\/wp-content\/plugins\/my-plugin\/images5f7d97548917d.png

0 投票
0 回答
545 浏览

php - 为存储在自定义插件中的函数注册 Wordpress REST 路由和端点 - 如何指向现有插件函数和路径

我被困在尝试为自定义插件函数注册 REST 路由,以使该函数可由 javascript 调用。

示例显示了在 functions.php 中的注册脚本中嵌入的端点函数(例如在https://www.sitepoint.com/creating-custom-endpoints-for-the-wordpress-rest-api/

但是,我的端点函数已经在自定义插件树的 PHP 文件中。

所以我试图:

  1. 为我的端点注册一个路由,例如:www.example.com/test/v1/route_function_name

  2. 将其指向我的自定义函数名称,例如name_of_function

  3. 告诉它在哪里可以找到该功能,例如www.example.com/wp-content/plugins/custom-plugin-name/path-tree-stuff/public/plugin-functions-controller.php

我被困在第 3 位。问题是:

a) 我在哪里放置这个函数名参考?我不想从该文件中撕下我的功能代码并将其粘贴到路由注册代码中。

b) 我应该把函数文件的路径引用放在哪里?我遵循的示例仅引用了“数组,this”而不是实际路径,因此不要说明如何将路由注册到未封装在注册代码中的外部存储端点。

c) 我错过了什么吗?看起来从 JS 中屏蔽实际的函数 php 文件路径只会导致将其暴露在 WP​​ 函数文件中吗?

https://developer.wordpress.org/rest-api/extending-the-rest-api/routes-and-endpoints/上的开发手册看起来像是它的示例试图通过自定义路由而不是自定义函数来挂钩 wordpress 功能.

有没有更适合我情况的例子?(我在自定义插件的自定义文件中有自定义函数,只需要注册一个 REST 路由并将其指向现有文件中的现有函数)。

到目前为止,我有以下显然不完整的内容:

尝试这样做的理由是:

  • 我已经运行了一个 JS 脚本
  • 我需要它来调用我已经编写的 PHP 函数
  • 这很简单:只需将函数的路径编码到 JS 中
  • 但是,我正在尝试以正确的 WP 方式来代替(主要是出于安全原因,但也是为了安抚 DevProperly 的精神!)

我假设:

i) 注册REST路由的地方在活动子主题的functions.php中;

ii) 我的自定义函数的位置在我现有的自定义插件内的一个 php 文件中;

iii) 注册 rest 路由的代码需要至少指定以下三件事:

  1. 新 REST 路由的 URI
  2. 要调用的 php 函数的名称
  3. 可以在自定义插件路径中找到该 php 函数的文件和路径,相对于 /var/www

这些假设是否不正确?

0 投票
0 回答
23 浏览

wordpress - 无法修改wordpress默认上传目录

在我的 wordpress 插件中,我试图根据帖子名称为我的电影自定义帖子图像设置一个自定义目录。我正在使用 Cmb2 元框。例如,如果帖子是 StarWars,我希望将图像存储在 uploads/movies/starwars/

这个问题已经解决了 100 次,大多数人使用过滤器“upload_dir”来解决这个问题。例如,

无论我将这段代码放在哪里, $_REQUEST['post_id'] 都会导致错误,以及始终为null的 $_GET['post'] 。

因为 global $post 在这里也是的,所以我不能使用像 define('UPLOADS', ... ) 这样的替代方法

我也尝试使用过滤器'wp_handle_upload_prefilter',但我遇到了与我已经提到的问题相同的问题。

似乎其他人也有同样的问题(https://wordpress.stackexchange.com/questions/366191/how-to-get-the-upcoming-post-id-from-front-end

有没有人有线索可以帮助我解决这个问题?在此先感谢您的帮助

0 投票
1 回答
810 浏览

wordpress - 无法在配置了 SMTP 插件的 wordpress 自定义插件中发送电子邮件

我已正确配置 SMTP 及其发送电子邮件。我必须构建一个自定义插件,该插件实际上会在某些事件触发器上发送电子邮件通知。我正在使用 WP Mail SMTP 插件。我不想在我的插件中配置任何东西。我只想扩展它们的功能并发送电子邮件。但我没有做到这一点。我写了这样的东西

请帮助解决这个问题。

0 投票
1 回答
127 浏览

wordpress - Elementor:使用插件从构建器获取内容

我正在编写一个从 elementor page builder 获取内容的插件。在前端它只是用 the_content() 显示,但在插件中它不是。

我正在使用 get_post(id) 获取内容,但它显示来自 WordPress 编辑器而不是页面构建器的内容。

知道这是为什么吗???

谢谢

0 投票
0 回答
23 浏览

wordpress - wordpress 附加脚本无法正常工作

我正在尝试附加我的 js 和 CSS 文件,但它不起作用,谁能帮帮我?

这是我的代码。

0 投票
2 回答
264 浏览

wordpress - 我如何在帖子保存时插入另一个帖子?

我正在尝试在 Wordpress 中的 save_post 钩子和 wp_insert_post 函数上插入新帖子。当我尝试保存或更新帖子时,它会触发无限循环。任何人都可以帮忙吗?

这是我的代码:

0 投票
1 回答
6357 浏览

php - 在哪里注册 REST 路由到 wordpress 插件端点

注册功能该去哪里?( register_rest_route())

  • 它必须在主题/子functions.php中吗?
  • 或者它可以在插件基础 php 文件中吗?(例如 \wp-content\plugins\example\example.php)

是否有任何文件可以澄清这一点?

官方文档中没有提到它: https ://developer.wordpress.org/rest-api/extending-the-rest-api/routes-and-endpoints/

同样,端点函数必须存储在哪里?注册函数只命名它,而不指定它的路径。

例如,你可以这样做:

  • 注册函数调用 ( register_rest_route) 进入主插件文件(例如 \wp-content\plugins\example\example.php)
  • 端点函数位于其他插件文件中(例如 \wp-content\plugins\example\sub-path-stuff\example-controller.php)

如果是这样,怎么做?

以下链接似乎尝试这样做,但没有指定这些属性(例如 \wp-content\plugins\example\example.php)

0 投票
0 回答
25 浏览

wordpress - 有没有办法从另一个函数内部使用 WPForms (Pro) 在 WordPress 中提交表单数据?

我正在寻找一种能够在我的 WordPress 主题中将函数中的数据提交到我的 WPForm 的方法。

我希望能够使用从典型 WPForm 之外收集的数据,但仍将其提交到 WPForm 的相同条目区域。

在查看了 WPForms 网站上的一些开发人员资源后,看起来他们提供了一些可以插入的钩子,但我不确定它们中的任何一个是要保存表单数据,还是只是更改表单数据。

0 投票
0 回答
82 浏览

php - 如何使用wordpress wp_remote_post将客户端multipart/formdata发布到.net core rest API?

任何建议如何将客户端文件输入发布到 php 函数,然后发布到 .NET 核心 Web API。该getCustomHeaderType()函数将所需的标头返回给我的 API,并$contentType从客户端读取并提供"multipart/formdata"boundary.

示例代码片段: 在此处输入图像描述