: str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated in
public function embedpress_generate_social_share_meta()
$post = get_post($post_id);
$thumbnail_url = get_the_post_thumbnail_url($post_id);
if (!empty($_GET['hash'])) {
$id_value = sanitize_text_field($_GET['hash']);
$url = get_the_permalink($post_id);
if (class_exists('Elementor\Plugin') && \Elementor\Plugin::$instance->db->is_built_with_elementor(get_the_ID())) {
$page_settings = get_post_meta($post_id, '_elementor_data', true);
$ep_settings = Helper::ep_get_elementor_widget_settings($page_settings, $id_value, 'embedpres_elementor');
$pdf_settings = Helper::ep_get_elementor_widget_settings($page_settings, $id_value, 'embedpress_pdf');
$doc_settings = Helper::ep_get_elementor_widget_settings($page_settings, $id_value, 'embedpres_document');
if (is_array($ep_settings) && !empty($ep_settings)) {
$title = !empty($ep_settings['settings']['embedpress_content_title']) ? $ep_settings['settings']['embedpress_content_title'] : '';
$description = !empty($ep_settings['settings']['embedpress_content_descripiton']) ? $ep_settings['settings']['embedpress_content_descripiton'] : '';
$image_url = !empty($ep_settings['settings']['embedpress_content_share_custom_thumbnail']['url']) ? $ep_settings['settings']['embedpress_content_share_custom_thumbnail']['url'] : '';
} else if (is_array($pdf_settings) && !empty($pdf_settings)) {
$title = !empty($pdf_settings['settings']['embedpress_pdf_content_title']) ? $pdf_settings['settings']['embedpress_pdf_content_title'] : '';
$description = !empty($pdf_settings['settings']['embedpress_pdf_content_descripiton']) ? $pdf_settings['settings']['embedpress_pdf_content_descripiton'] : '';
$image_url = !empty($pdf_settings['settings']['embedpress_pdf_content_share_custom_thumbnail']['url']) ? $pdf_settings['settings']['embedpress_pdf_content_share_custom_thumbnail']['url'] : '';
} else if (is_array($doc_settings) && !empty($doc_settings)) {
$title = !empty($doc_settings['settings']['embedpress_doc_content_title']) ? $doc_settings['settings']['embedpress_doc_content_title'] : '';
$description = !empty($doc_settings['settings']['embedpress_doc_content_descripiton']) ? $doc_settings['settings']['embedpress_doc_content_descripiton'] : '';
$image_url = !empty($doc_settings['settings']['embedpress_doc_content_share_custom_thumbnail']['url']) ? $doc_settings['settings']['embedpress_doc_content_share_custom_thumbnail']['url'] : '';
if (!empty($image_url)) {
$tags .= "<meta name='twitter:image' content='" . esc_url($image_url) . "'/>\n";
$tags .= "<meta property='og:image' content='" . esc_url($image_url) . "'/>\n";
$tags .= "<meta property='og:url' content='" . esc_url("$url?hash=$id_value") . "'/>\n";
} else if (!empty($thumbnail_url)) {
$tags .= "<meta name='twitter:image' content='" . esc_url($thumbnail_url) . "'/>\n";
$tags .= "<meta property='og:image' content='" . esc_url($thumbnail_url) . "'/>\n";
$title = json_decode('"' . $title . '"', JSON_UNESCAPED_UNICODE);
$tags .= "<meta property='og:title' content='" . esc_attr($title) . "'/>\n";
$tags .= "<meta name='title' property='og:title' content='" . esc_attr($title) . "'>\n";
$tags .= "<meta name='twitter:title' content='" . esc_attr($title) . "'/>\n";
if (!empty($description)) {
$description = json_decode('"' . $description . '"', JSON_UNESCAPED_UNICODE);
$tags .= "<meta property='og:description' content='" . esc_attr($description) . "'/>\n";
$tags .= "<meta name='twitter:description' content='" . esc_attr($description) . "'/>\n";
$block_content = $post->post_content;
// Regular expression to match the id and href keys and their values
$thumb = '/(?:"id":"' . $id_value . '"|"clientId":"' . $id_value . '").*?"customThumbnail":"(.*?)"/';
$title = '/(?:"id":"' . $id_value . '"|"clientId":"' . $id_value . '").*?"customTitle":"(.*?)"/';
$description = '/(?:"id":"' . $id_value . '"|"clientId":"' . $id_value . '").*?"customDescription":"(.*?)"/';
// Search for the regex pattern in the string and extract the href value
// Search for the regex pattern in the string and extract the href value
if (preg_match($thumb, $block_content, $matches1)) {
$image_url = esc_url($matches1[1]);
echo "\n<meta name='twitter:image' content='" . esc_attr($image_url) . "'/>\n";
echo "<meta property='og:image' content='" . esc_attr($image_url) . "'/>\n";
echo "<meta property='og:url' content='" . esc_url("$url?hash=$id_value") . "'/>\n";
} else if (!empty($thumbnail_url)) {
echo "\n<meta name='twitter:image' content='" . esc_attr($thumbnail_url) . "'/>\n";
echo "<meta property='og:image' content='" . esc_attr($thumbnail_url) . "'/>\n";
if (preg_match($title, $block_content, $matches2)) {
$title = json_decode('"' . $matches2[1] . '"', JSON_UNESCAPED_UNICODE);
echo "<meta property='og:title' content='" . esc_attr($title) . "'/>\n";
echo "<meta name='title' property='og:title' content='" . esc_attr($title) . "'>\n";
echo "<meta name='twitter:title' content='" . esc_attr($title) . "'/>\n";
if (preg_match($description, $block_content, $matches3)) {
$description = json_decode('"' . $matches3[1] . '"', JSON_UNESCAPED_UNICODE);
echo "<meta property='og:description' content='" . esc_attr($description) . "'/>\n";
echo "<meta name='twitter:description' content='" . esc_attr($description) . "'/>\n";
$tags .= "<meta name='twitter:card' content='summary_large_image'/>\n";
remove_action('wp_head', 'rel_canonical');