PHP 中未显示引号和撇号

Quotation marks and apostrophes not displaying in PHP

我正在尝试将 google 分析的 onclick 属性附加到 wordpress 导航菜单项。

add_filter( 'nav_menu_link_attributes', 'wpse121123_contact_menu_atts', 10, 3 );
function wpse121123_contact_menu_atts( $atts, $item, $args )
{
  // The ID of the target menu item
  $menu_target = 6384;

  $mystring = '\'http://example.com/your-link\'';

  // inspect $item
  if ($item->ID == $menu_target) {
    $atts['onclick'] = 'return gtag_report_conversion(' . htmlentities($mystring, ENT_NOQUOTES) . ');';
  }
  return $atts;
}

我试过 ENT_QUOTES、ENT_NOQUOTES,用斜杠转义,交替使用单引号和双引号,有和没有 htmlentities() 但 HTML 总是输出 HTML 个字符,如下所示。

<a title="link" href="#" class="nav-link" onclick="return gtag_report_conversion(&#039;http://example.com/your-link&#039;);">Link</a>

我如何确保按照如下所示的 GA 文档显示 - 即 URL 用单引号引起来。

<a title="link" href="#" class="nav-link" onclick="return gtag_report_conversion('http://example.com/your-link');">Link</a>

非常感谢。

这不是我要找的答案,但我找到了 jQuery 的解决方法。

jQuery('#menu-item-6384 > a').attr("onclick", "return gtag_report_conversion('https://www.mylink.com/conversion/');");

消除所有特殊字符的问题