2013-04-24 2 views
0

간단한 에코를 사용하여 바닥 글 크레딧에 링크를 추가하려고합니다. 링크는 바닥 글에 표시되지만 클릭하면 404 페이지가 제공됩니다. 페이지가 존재하고 수동으로 입력하거나 html 링크를 사용하면 페이지가 나타납니다. 내가 도대체 ​​뭘 잘못하고있는 겁니까??Wordpress php 에코 링크가 작동하지 않습니다.

add_filter('genesis_footer_creds_text', 'custom_footer_creds_text'); 
     function custom_footer_creds_text() { 
      echo '<div class="creds"><p>'; 
      echo 'Copyright &copy; '; 
      echo date('Y'); 
      echo ' &middot; <a href="/privacy-policy/‎">Privacy Policy</a> &middot; <a href="/about-us/‎">Terms of Use</a>'; 
      echo '</p></div>'; 
     } 

출력 :이 필터 인 경우

<div class="creds"> 
    <p>Copyright © 2013 · <a href="http://speakeasy.stagetheweb.com/privacy-policy/‎">Privacy Policy</a> · <a href="http://speakeasy.stagetheweb.com/terms-of-use/‎">Terms of Use</a> 
    </p></div> 
+0

HTML이 페이지로 출력되면 어떻게됩니까? – ckpepper02

+2

'

Copyright © 2013 · Privacy Policy · Terms of Use

' – user2316102

+0

'add_filter()'wordpress 함수가 그것을 죽일 수도 있습니다. 에코 코드를'footer.php' 템플릿 파일에 직접 첨가 해 보았습니다. – ckpepper02

답변

0

, 당신은 값을 반환해야합니다. 시도 :

add_filter('genesis_footer_creds_text', 'custom_footer_creds_text'); 
function custom_footer_creds_text($creds) 
{ 
    $creds = ''; 
    $creds .= '<div class="creds"><p>'; 
    $creds .= 'Copyright &copy; '; 
    $creds .= date('Y'); 
    $creds .= ' &middot; <a href="' . home_url('/privacy-policy/') . '‎">Privacy Policy</a> &middot; <a href="' . home_url('/about-us/‎') . '">Terms of Use</a>'; 
    $creds .= '</p></div>'; 

    return $creds; 
} 
+0

불행히도 그것은 작동하지 않았다. – user2316102

+0

마지막 줄을 바꾸어 넣으려고합니다 :'echo $ creds;' – diggy

+0

echo $ creds; 아니야. 링크가 작동하지 않는 것은 미친 일입니다. 바로 그곳에 있습니다. 올바른 것입니다. 클릭 할 때마다 매번 404를 반환합니다. – user2316102

1

에 한번 교체 :

echo ' &middot; <a href="/privacy-policy/‎">Privacy Policy</a> &middot; <a href="/about-us/‎">Terms of Use</a>'; 

로 : 또한 home_url() 대신 get_site_url()을 시도 할 수 있습니다

echo ' &middot; <a href="' . get_site_url() . '/privacy-policy/‎">Privacy Policy</a> &middot; <a href="' . get_site_url() . '/about-us/‎">Terms of Use</a>'; 

. 이것이 문제를 해결하지 못한다면, 우리가 사물에 영향을 미칠 수있는 다른 요소가 있습니다. 그래도 도움이되지 않으면 생성되는 URL을 볼 수 있도록 라이브 사이트에 표시된 푸터의 HTML 출력 (예 : 소스보기)을 게시하십시오.

+0

이것은 출력입니다. '

Copyright © 2013 · Privacy Policy · Terms of Use

' – user2316102

1

URL에 공백이있는 것처럼 보입니다. http://speakeasy.stagetheweb.com/privacy-policy/ 링크를 클릭하면 페이지가 제대로 표시됩니다. 그러나 링크를 클릭하면 주소 표시 줄에 &nbsp; 또는 그 외의 탭이 표시됩니다.

그래서 아마 시도 :

$privacylink = rtrim("/privacy-policy/"); 

echo ' &middot; <a href="' .$privacylink. '‎">Privacy Policy</a> &middot;'; 

를 문제가 해결되지 않으면, 그것은 바로 당신의 .htaccess 파일 그것은 당신이 어디에서 URL을 붙여 넣은 복사하는 것이 매우 가능성이 높습니다

2

뭔가 할 수있다?

모르는 사이에 일부 보이지 않는 문자를 복사했을 수 있으므로 전체 줄을 직접 다시 작성하십시오.

1

참고 : 코드에 잘못된 문자가 있습니다.

enter image description here

이 작동하지 않을 수 있습니다. 방금 코드에서 잘못된 문자를 제거했습니다. 블록을이 것으로 교체하십시오.

add_filter('genesis_footer_creds_text', 'custom_footer_creds_text'); 
     function custom_footer_creds_text() { 
      echo '<div class="creds"><p>'; 
      echo 'Copyright &copy; '; 
      echo date('Y'); 
      echo ' &middot; <a href="/privacy-policy/">Privacy Policy</a> &middot; <a href="/about-us/">Terms of Use</a>'; 
      echo '</p></div>'; 
     } 
관련 문제