2014-02-26 3 views
0

나는 내 wordpress 파일과 코드를 찾고있었습니다. functions.php이라는 파일이 있습니다. 그러나 모든 파일에서 functions.php을 포함하지 않고 기능을 호출 할 수있는 방법은 무엇입니까?없이 Wordpress 기능

다른 페이지에서 무언가를 사용하고 싶을 때 파일을 포함시켜야한다는 것을 알게되었습니다.

인터넷에서 유용한 정보를 찾을 수 없습니다. 누군가 나에게 이것을 설명 할 수 있습니까?

답변

0

How Wordpress Generates HTML for Blog Posts-@rdlowrey의 대답을 살펴보십시오

워드 프레스는 무엇을 - 그리고 인기 MVC 프레임 워크의 참으로 많은 - 경로가 아파치를 사용하는 프런트 컨트롤러 [wiki] 스크립트에 모든 트래픽을 .htaccess 파일.

WP 설치에서 제공되는 페이지에 액세스 할 때 모든 기능이 동일한 "시작 지점"을 통과하기 때문에 특정 기능을 사용할 수있게됩니다.

는 흔적을 다음 시작 루트 디렉토리에 index.php를 열고이를 보려면 : 거기에서

/** Loads the WordPress Environment and Template */ 
require(dirname(__FILE__) . '/wp-blog-header.php'); 

wp-blog-header.php를보십시오. 로딩 중입니다. wp-load.php. wp-config.php이 없으면 설치하라는 메시지가 나타납니다. 디렉토리에 있다면, wp-settings.php이 필요합니다. 테마의 functions.php 파일 라인 (318)의 주위에 믹스에 추가됩니다 설정 파일에서

, 사용자가 명시 적으로 볼 수는

// Load the functions for the active theme, for both parent and child theme if applicable. 
if (! defined('WP_INSTALLING') || 'wp-activate.php' === $pagenow) { 
    if (TEMPLATEPATH !== STYLESHEETPATH && file_exists(STYLESHEETPATH . '/functions.php')) 
     include(STYLESHEETPATH . '/functions.php'); 
    if (file_exists(TEMPLATEPATH . '/functions.php')) 
     include(TEMPLATEPATH . '/functions.php'); 
} 
+0

감사합니다. 매우 유용합니다! 나는 내 PC에 텍스트 파일에 게시물을 유지합니다 : D 조 – thommylue

0

functions.php 활성 테마의 파일은 WordPress 사이트가 페이지를 제공 할 때마다로드됩니다.

그래서 거기에 추가 한 모든 기능이로드되어 템플릿 파일에서 사용할 수 있습니다.

당신의 functions.php 파일은 다음과 같은 말 :

<?php 
function my_example() { 
    echo "<h1>My example</h1>"; 
} 

그런 다음 header.php이 같은 그 함수를 호출 할 수 있습니다에서 :

<html> 
<head></head> 
<body> 
    <?php my_example(); ?> 
</body> 
</html> 

을 당신은 (include 특별히 할 필요가 없습니다 include_once) functions.php 파일을 사용하여 방금 신고 한 기능을 사용하십시오.

+0

예 (적어도 WP 3.8.1의) : 나는 파일 기능을 가지고 .php와 page.php 파일에는 functions.php에 대한 함수가 있으며 page.php에서 호출합니다. function.php에서 함수가 만들어 졌다는 것을 page.php가 어떻게 알 수 있습니까? – thommylue

+0

상황을 제어하는'page.php '는 아니지만, WordPress 앱 자체는 부트 스트랩을 통해 일상 생활을 쉽게 만들어줍니다. 로드되는 것들 중 하나는 테마 엔진입니다. 결국'functions.php'와 * after *를로드하면'index.php','header.php','page.php','archive .php' 등등. – versvs