WordPress에서 현재 플러그인 디렉토리를 가져오려면 어떻게 해야 합니까?
다음과 같은 현재 플러그인 디렉토리를 가져와야 합니다.
[wordpress_install_dir]/wp-content/plugins/plugin_name
(만약getcwd()
플러그인에서 호출되어 반환됩니다.[wordpress_install_dir]
, 인스톨의 루트).
이러한 목적을 위해 특별히 설계된 WordPress 핵심 기능을 사용합니다.
<?php plugin_dir_path( __FILE__ ); ?>
여기에서 Codex 문서를 참조하십시오.
또,
<?php plugin_dir_url( __FILE__ ); ?>
서버 경로가 아닌 URI를 찾는 경우.
여기에서 Codex 문서를 참조하십시오.
IMO, 항상 코어에서 사용할 수 있는 최고 수준의 방법을 사용하는 것이 가장 좋습니다. 그리고 이게 끝입니다.코드를 미래에 대비할 수 있습니다.
OP의 답변을 보면 OP가 원하는 것 같습니다.
$plugin_dir_path = dirname(__FILE__);
이렇게 하면 실제로 원하는 결과를 얻을 수 있습니다.
<?php plugin_dir_url(__FILE__); ?>
플러그인 디렉토리를 가져오려면 WordPress 함수를 사용할 수 있습니다.plugin_basename($file)
따라서 다음과 같이 플러그인의 폴더와 파일 이름을 추출할 수 있습니다.
$plugin_directory = plugin_basename(__FILE__);
이 값을 플러그인 디렉토리의 URL 또는 서버 경로와 결합할 수 있습니다.따라서 상수를 사용할 수 있습니다.WP_PLUGIN_URL
플러그인 디렉토리 URL을 가져오거나WP_PLUGIN_DIR
서버 경로를 가져옵니다.그러나 Mark Jaquith가 아래의 코멘트에서 언급했듯이 이것은 플러그인이 WordPress 플러그인 디렉토리에 있는 경우에만 작동합니다.
자세한 내용은 WordPress 코덱스를 참조하십시오.
$full_path = WP_PLUGIN_URL . '/'. str_replace( basename( __FILE__ ), "", plugin_basename(__FILE__) );
- WP_PLUGIN_URL: 플러그인 디렉토리의 URL
- WP_PLUGIN_DIR – 플러그인 디렉토리에 대한 서버 경로
이 페이지는 플러그인 및 콘텐츠 디렉터리 확인에 도움이 될 수 있습니다.
이것을 시험해 보세요.
function PluginUrl() {
// Try to use the WordPress API if possible, introduced in WordPress 2.6
if (function_exists('plugins_url'))
return trailingslashit(plugins_url(basename(dirname(__FILE__))));
// Try to find it manually... can't work if wp-content was renamed or is redirected
$path = dirname(__FILE__);
$path = str_replace("\\", "/", $path);
$path = trailingslashit(get_bloginfo('wpurl')) . trailingslashit(substr($path, strpos($path, "wp-content/")));
return $path;
}
echo PluginUrl();
현재 플러그인 URL이 반환됩니다.
WordPress 2.6.0이므로 이 방법을 사용할 수 있습니다.
플러그인(plugin_dir_path)뿐만 아니라 보다 일반적인 디렉토리도 가져와야 할 경우__DIR__
가 호출되는 파일의 디렉토리의 패스가 표시됩니다.기능에서 사용할 수 있게 되었습니다.php 또는 다른 파일!
설명:
파일의 디렉토리.include 내에서 사용되는 경우 포함된 파일의 디렉토리가 반환됩니다.이것은 dirname에 해당합니다.
__FILE__
루트 디렉토리가 아닌 한 이 디렉토리 이름에는 후행 슬래시가 없습니다.[1] 1
파일 내에서 현재 디렉토리 경로를 가져오려면 매직 상수를 사용할 수 있습니다.__FILE__
그리고.__DIR__
와 함께plugin_dir_path()
다음과 같이 기능:
$dir_path = plugin_dir_path( __FILE__ );
현재 디렉토리 경로:
/home/user/var/www/wordpress_site/wp-content/plugins/custom-plugin/
__FILE__
경로를 합니다.
업 는, 「1」을 해 주세요.__DIR__
직직: :
현재 경로:
/home/user/var/www/wordpress_site/wp-content/plugins/custom-plugin/
$dir = plugin_dir_path( __DIR__ );
1레벨 업 패스:
/home/user/var/www/wordpress_site/wp-content/plugins/
__DIR__
반환합니다.
플러그인의 메인 PHP 파일 내에서 이것은 admin에서만 작동합니다.
$plugin_data = get_plugin_data( __FILE__ );
$plugin_name = $plugin_data['Name'];
합니다.__DIR__
PHP의 PHP】__DIR__
는, 디렉토리를 취득하기 합니다.다른 곳에서 상수 또는 함수를 호출하면 플러그인 디렉토리 경로가 반환됩니다.현재 플러그인 디렉토리 경로를 유지하는 상수의 다음 예를 참조하십시오.
define( 'YOURPLUGIN_PATH', __DIR__ );
언급URL : https://stackoverflow.com/questions/3128873/how-can-i-get-the-current-plugin-directory-in-wordpress
'programing' 카테고리의 다른 글
TypeScript를 사용한 react-router- (0) | 2023.03.04 |
---|---|
Angular ui-router를 사용하여 상태 변경 없이 URL 쿼리 매개 변수 설정 (0) | 2023.03.04 |
word press에서 url을 통해 로그아웃하려면 어떻게 해야 합니까? (0) | 2023.03.04 |
PyPi용 JSON API - 패키지 목록 작성 방법 (0) | 2023.03.04 |
Android 앱에서 WordPress 블로그에서 게시물을 검색하는 방법은 무엇입니까? (0) | 2023.03.04 |