여러 아티스트 페이지가있는 음악 웹 사이트입니다 (아티스트마다 한 페이지 씩). 새로운 콘텐츠는 아티스트를 나타내는 Wordpress 태그가있는 게시물로 추가됩니다. 이것은 각 아티스트 페이지에 Wordpress 루프를 추가하여 해당 아티스트 태그로 필터링 된 모든 게시물을 표시 할 수 있도록하기위한 것입니다.이 PHP 스 니펫을 Wordpress 단축 코드로 변환하려면 어떻게해야합니까?
필터링 된 루프가 제대로 작동하고 있지만 불행히도 현재 페이지 템플릿의 HTML 안에 하드 라이트되어있어 태그 하나만 필터링합니다. 각 아티스트마다 새 페이지 템플릿을 만들고 싶지 않으므로 대신 functions.php 파일에 추가하고 싶습니다. 대신 각 아티스트의 새로운 단축 코드를 만들 수 있습니다.
<?php
query_posts("tag=seefour");
if (have_posts()) { ?>
<?php while (have_posts()) { ?>
<?php the_post(); { ?>
<div class="jd-box">
<a href="<?php the_permalink(); ?>">
<?php the_post_thumbnail(); ?>
<div class="jd-overlay"></div>
<div class="jd-overlay-text">
<?php the_title(); ?>
</div>
</a>
</div>
<?php } ?>
<?php } ?>
<?php } ?>
나는 최선의 선택이 seefour이 점을 설정하는 것입니다 있으리라 믿고있어 :
는 여기에 우리의 seefour 태그 모든 게시물에 대한 루프 필터 내 페이지 템플릿에서 현재 코드입니다 내 짧은 코드 내 functions.php 파일 - 어떻게 이것을 할 수 있습니까?
보너스 질문 : 장기적으로 지속 가능한가요? (30-50 명 이상 아티스트 포함) 또는 중복 코드가 많이 발생합니까? 제안 열기 ...
P.S. 나는 이런 종류의 질문이 이미 (원시 PHP로 시작하는) 응답되었음을 알고 있지만, HTML/PHP (그리고 PHP newb)의 혼합으로 시작하고 있기 때문에, 나는 그걸 작동시킬 수 없다. 그래서 다시 묻는 것에 대해 사과드립니다.
위의 Junaid의 정확한 표시가 끝날 때까지 어떻게 든 대답을 보지 못했습니다. 나는 당신의 판단을'get_posts()'와'query_posts()'에 대해 신뢰하지만, 나의 functions.php 파일에 정확하게 코드를 추가 한 다음 SeeFag 페이지에'[showtag tag = "seefour"]'를 추가하면, shortcode in 일반 텍스트. 아마도 나는 뭔가를 놓쳤을 까? – John
shortcode가 일반 텍스트로 표시된다면, 아마도 function.php에'add_shortcode ...'줄을 추가하지 않았다는 것을 의미합니다. 어쨌든, 테스트 중에 내 코드에서 실수를 발견하고 대답을 업데이트했습니다. 답변 코드를 복사하고 다시 시도하십시오. –
이것으로 돌아가서, 당신의 코드는 하드 코드 된 단축 코드' php echo do_shortcode ("[showtag tag = 'seefour']")로 매우 잘 동작합니다; ?>'페이지 템플리트 내에서. WP 텍스트 편집기에서 정상적인 [단축 코드]로 제대로 작동하지 않는 이유를 알아낼 수 없습니다. – John