php 使Elementor成为默认编辑器,而不是WordPress编辑器(Gutenberg或Classic)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php 使Elementor成为默认编辑器,而不是WordPress编辑器(Gutenberg或Classic)相关的知识,希望对你有一定的参考价值。

<?php

/**
 * Make Elementor the default editor, not the WordPress Editor (Gutenberg or Classic)
 * Clicking the page title will take you to the Elementor editor directly
 * Even non-Elementor-edited pages will become Elementor-edited pages now
 * You can revert by clicking the "Back to WordPress Editor" button
 *
 * Author:  Joe Fletcher, https://fletcherdigital.com
 * URL:	    https://gist.github.com/heyfletch/7c59d1c0c9c56cbad51ef80290d86df7
 * Credit:  mjakic https://wordpress.stackexchange.com/questions/178416/how-to-change-the-title-url-on-the-edit-post-screen
 * Credit:  Aurovrata Venet https://developer.wordpress.org/reference/hooks/post_row_actions/
*/

/** Replace hyperlink in post titles on Page, Post, or Template lists with Elementor's editor link */
add_filter('get_edit_post_link', 'fd_make_elementor_default_edit_link', 10, 3 );
function fd_make_elementor_default_edit_link($link, $post_id, $context) {

	// Get current screen parameters
	$screen = get_current_screen();

	//check if $screen is object otherwise we may be on an admin page where get_current_screen isn't defined
	if( !is_object($screen) )
		return;

	// Post Types to Edit with Elementor
	$post_types_for_elementor = array(
		'page',
		'post',
		'elementor_library',
	);

	// When we are on a specified post type screen
	if ( in_array( $screen->post_type, $post_types_for_elementor ) && $context == 'display' ) {

		// Build the Elementor editor link
		$elementor_editor_link = admin_url( 'post.php?post=' . $post_id . '&action=elementor' );

		return $elementor_editor_link;
	} else {
		return $link;
	}
}

/** Add back the default Edit link action in Page and Post list rows */
add_filter( 'page_row_actions', 'fd_add_back_default_edit_link', 10, 2 );
add_filter( 'post_row_actions', 'fd_add_back_default_edit_link', 10, 2 );
function fd_add_back_default_edit_link( $actions, $post ) {

	// Build the Elementor edit URL
	$elementor_edit_url = admin_url( 'post.php?post=' . $post->ID . '&action=edit' );

	// Rewrite the normal Edit link
	$actions['edit'] =
		sprintf( '<a href="%1$s">%2$s</a>',
			esc_url( $elementor_edit_url ),
			esc_html( __( 'Default WordPress Editor', 'elementor' ) )
		);

   return $actions;
}


/** (optional) Remove redundant "Edit with Elementor" link added by Elementor itself */
add_filter( 'page_row_actions', 'fd_remove_default_edit_with_elementor', 99, 2 );
add_filter( 'post_row_actions', 'fd_remove_default_edit_with_elementor', 99, 2 );
function fd_remove_default_edit_with_elementor( $actions, $post ) {

  // Rewrite the normal Edit link
  unset( $actions['edit_with_elementor'] );

  return $actions;
}

/** Alternative:  Rewrite just the Edit link, and leave the page title as original */
/** Rewrite the normal Edit link on lists of Pages and replace it with Elementor's edit link */
// add_filter( 'page_row_actions', 'fd_elementor_modify_list_row_actions', 10, 2 );
// add_filter( 'post_row_actions', 'fd_elementor_modify_list_row_actions', 10, 2 );
// function fd_elementor_modify_list_row_actions( $actions, $post ) {

// 		// Build the Elementor edit URL
// 		$elementor_edit_url = admin_url( 'post.php?post=' . $post->ID . '&action=elementor' );

// 		// Rewrite the normal Edit link
// 		$actions['edit'] =
// 		  sprintf( '<a href="%1$s">%2$s</a>',
//         esc_url( $elementor_edit_url ),
//         esc_html( __( 'Elementor Editor', 'elementor' ) )
// 			);

//     return $actions;
// }

以上是关于php 使Elementor成为默认编辑器,而不是WordPress编辑器(Gutenberg或Classic)的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 elementor 更改文本的颜色和大小

使 Int64 成为默认的整数 dtype,而不是 pandas 中的标准 int64

Elementor编辑器 2018年最流行的WordPress页面构建插件

如何使键盘 UITextField 中的数字视图成为默认值?

如何使 AndroidX 成为新 Android 项目的默认库?

如何使日期输入字段的默认值成为普通文本? [复制]