[책 메모] 《워드프레스 제대로 파기》, 웹 액츄얼리

▶워드프레스 제대로 파기 책 웹사이트 보기

워드프레스의 인기가 심상치 않다. 나는 내 블로그를 정말 우연히 워드프레스로 만들게 됐는데, 이게 한국에서도 이렇게 큰 인기를 끌게 될 줄 몰랐다.

책의 기본 정보는 아래와 같다. 이 정보는 iReadItNow 아이폰 어플에서 뽑은 정보다. ㅋ

Author : 크리스 코이어|제프 스타
Publisher : 웹액츄얼리코리아
Format : 447 pages
ISBN : 9788996349891

책을 읽으면서 밑줄 그은 부분들

아래는 책을 읽으면서 밑줄을 그은 내용들이다. 모두 iReadItNow 어플을 이용해 메모한 것이다. 내가 어떤 부분이 도움이 되었는지 소개하는 건 나중에 기회 되면 추가할 생각이고, 상당히 많은 밑줄을 받아 적었으니 한 번 보면서 책이 유용할지 판단해 보면 되겠다. 이 이제부터 시작이다.

반드시 필요하고 유용한 것이 아니라면 그 어떤 것도 하지 마라. 하지만 그것이 필요하고 유용하다면 아름답게 만들기 위해 주저하지 마라. – 셰이커 필로소피 Shaker Philosophy
P.22

예를 들어, 필자의 블로그에서 카테고리 #456을 보는데 고유한 템플릿을 사용하고 싶을 경우 category-456.php라는 파일을 만들면 워드프레스가 자동으로 그 템플릿을 사용한다.
P.74

쿼리 문자열이 무엇인지 사용자도 알려면 루프 앞에 다음의 짤막한 코드를 추가해서 웹페이지에 보여주도록 출력(echo)해야 한다.

P.84

제 비용은 다음과 같습니다.
시간당 $50
시간당 $75(참관할 경우)
시간당 $100(도와줄 경우)
– 전통적인 자동차 정비 광고 문구
자동차 정비사들이 흔히 하는 농담입니다. 정해진 비용은 시간당 50달러인데 차 주인이 구경하면서 이래라 저래라 하는 척하며 훈수 구는 것이 짜증나기 때문에 구경할 경우 75달러, 아예 팔을 걷어 붙이고 도와준다고 할 때는 100달러를 받겠다는 뜻입니다. 아는 척하며 참견하는 밉상 고객을 향한 진담 반 농담 반입니다.
P.104

루프를 사용자에 맞게 설정하는 3가지 방법
query_posts() : 포스트 개수 제한, 특정 카테고리를 제외한다.
WP_Query() : 원하는 수만큼 다양한 종류의 중복 루프를 만들 수 있다.
get_posts() : 추가적인 루프를 만들 때 사용한다. query_posts와 같은 인수를 받는다.
P.105

WP_Query를 사용해 페이지 나누기
기본 루프를 사용하면 쿼리된 포스트는 페이지로 나뉘고 방문자는 이전 포스트와 새로운 포스트를 볼 수 있다. 루프를 사용자에 맞게 설정하면서 페이징 기능을 계속 유지하려면 WP_Query를 이용해 루프를 사용자 설정할 때 다음과 같이 '&paged='.$paged 를 인수 문자열에 추가한다.

new WP_Query('cat=-9&paged='.$paged);
P.109

사용자에 맞게 기본 루프를 정의하고 여러 루프를 만들기 위한 핵심은 다음과 같다.
• 기본 루프를 수정하려면 query_posts() 사용
• 루프를 수정하거나 여러 루프를 만들려면 WP_Query 사용
• 정적이면서 추가적인 루프를 만들려면 get_posts() 사용
P.111

new WP_Query('cat=-7&showposts=5&offset=5');

카테고리 7은 제외하고 5개의 포스트를 보여주시오([맨 앞의] 5개 건너뜀)
P.116

다중 루프 및 사용자 정의 루프 : Perishable Press에서 내 전문 분야 중 하나는 워드프레스 루프다. 다중 루프와 사용자 정의 루프의 생성과 사용에 대해 좀더 알고 싶다면 ‘loop‘ 태그로 기사를 훑어 본다.
http://digwp.com/u/402
P.117

워드프레스 페이지 내비게이션 : 워드프레스 페이지 내비게이션에 대한 자세한 가이드는 Digging into WordPress 사이트를 참고.
http://digwp.com/u/401
P.117

워드프레스에서 이런 코드를 본 적이 있을 것이다.

__("string");

여기서 문자열은 어떤 것이든 될 수 있는데, 실제로는 워드프레스에서 ‘로컬화’를 위한 함수다. 다른 로컬화가 활성화되면 해당 단어의 번역을 검색해서 반환하고, 그렇지 않으면 입력했던 것을 그대로 반환한다.
P.126

인기 있는 포스트를 골라내기 위한 ‘인기도’의
개념은 ‘최근순’처럼 명확한 기준과는 달리 막연하다. 인기도는 어떻게 정의할 수 있을까?페이지 화면? 코멘트 개수? 백 링크? 앞서 말한 것들을 다 포함해 인기를 가늠하고 싶다면 http://digwp.com/u/117에 있는 wordpress Popular Posts 플러그인을 사용해보기 바란다.
P.131

4-3. 인기 있는 포스트 나열하기
[132p에 코멘트가 많은 놈을 가져 오는 코드가 있다.]

4-4. 최근 수정된 포스트 나열하기
[orderby=modified로 주면 된다.]

4-5. 랜덤 포스트 나열하기
[orderby=rand로 주면 된다.]
P.131 ~ 133

1단계: jQuery 큐에 넣기
[이렇게 하면 jQuery를 두 번 로드하는 것을 방지할 수 있다. 134p에 코드가 있다.]
P.134

워드프레스는 피드 파싱을 위해 MagpieRSS를 사용하곤 했다. 프로젝트는 계속 이어지지 못했고 경쟁 제품 중 하나인 SimplePie가 커다란 영향력을 발휘하게 되었다. 워드프레스는 SimplePie로 갈아탔고, 이제 SimplePie 개발도 완료되었다. SimplePie는 독자적으로 사용할 수도 있지만, 그것이 워드프레스에 포함되었다는 것은 다른 피드 파서에게는 절망적인 일 (또는 죽음의 키스 같은 것)이다.
P.137

5. 자식 테마 만들고 사용하기
… 지금까지 테마를 수정해 왔다면 초기 상태에서부터 업데이트하느라 고생이 많았을 것이다. 사실 이 작업은 자식 테마를 사용하면 그렇게 큰 작업이 아니다. 부모 테마만 교체하면 수정한 내용에는 영향을 미치지 않기 때문이다. 당신이 테마 제작자이며 여러 가지 버전의 테마를 출시하고 싶은가? 그렇다면 자식 테마가 해답이다. …
이 작업은 매우 간단하며 사이트의 상태를 항상 최신으로 유지하면서 필요한 코드를 유지하는 데 아주 효과적이다.
자식 테마를 만드는 것은 아주 간단하다. wp-content/theme 디레고리에 폴더를 만들고(폴더 이름은 원하는 것으로 한다) 그 폴더 안에 style.css 파일 하나를 만든다.
CSS 파일의 맨 위에는 특별한 형태의 코멘트가 들어가는데 여기에 테마를 명시하되 사용할 부모 테마를 명시하는 것이 중요하다. 다음은 예제다.

가장 중요한 것은 ‘Template:DigWP’로 부모 테마가 있는 폴더를 알려 준다.
P.139 ~ 140

테마 개발자를 위한 유용한 플러그인
Custom Query String Reloaded
The Excerpt Reloaded
Theme Switcher
P.154

사용자 정의 필드 튜토리얼
사용자 정의 필드 사용애 대해 좀더 깊이 있는 정보를 알고 싶다면 다음 2가지 튜토리얼을 확인한다.
http://digwp.com/u/515
http://digwp.com/u/516
P.175

동적인 메뉴
[함수들]

다음은 워드프레스의 기본 내비게이션 시스템을 개선하고 확장하는 게 도움이 될 만한 무료 플러그인이다.
[목록은 183p에 있다.]
P.182 ~ 183

CMS와 관련된 플러그인
[목록]
P.184 ~ 189

카테고리 피드 링크와 멋진 피드 아이콘 나열하기
여기 방문자에게 카테고리의 모든 피드 목록을 제공하는 방법이 있다. 자체 피드를 가지고 있는 카테고리가 많을 경우 아주 유용한 방법이다. 필요한 것은 wp_list_categories() 태그와 몇 개의 인수뿐이다.

이렇게 하면 부모 단계의 카테고리 목록과 각각 그 옆에 피드 링크 아이콘을 출력한다. 피드 이미지에 대한 경로도 기억해 두기 바란다. 이 태그를 사용자에 맞게 설정하는 자세한 방법은 Codex http://digwp.com/u/86 를 참고한다.
P.195

코멘트 [이메일로] 구독하기
… 마크 재퀴스의 뛰어난 플러그인 Subscribe to Comment http://digwp.com/u/85 를 이용해 손쉽게 추가할 수 있다.
P.198

피드 URL 정규화(Canonicalize)

RedirectMatch 301 \/rss2\/ http://domain.tld/feed/
P.198

개별적인 카테고리 피드를 해당하는 피드버너로 히더이렉트하고 싶다면 어떻게 해야 할까? 플러그인을 사용하면 불가능하지만 다행히 아파티의 강력한 HTAccess을 사용하면 빠르고 쉽게 해결할 수 있다.
P.207

http://digwp.com/feed?cat=-11&year=2008&author=-3

이 코드는 카테고리 11도 제외하고 2008년부터 시작된 포스트도 제외하고, 작성자 3이 작성한 포스트도 제외한다.
P.222

CSS를 피드에 추가하는 가장 쉬운 방법은 FeedStyler 플러그인을 통해 인라인 스타일을 추가하는 것이다.
P.225

6-12 피드 콘텐츠 보호하기

• Antileech 플러그인 http://digwp.com/u/182
피드를 출력할 때 작은 ‘AntiLeech’ 그래픽을
포함시킴으로써 콘텐츠 도둑을 막아준다. 이 그래픽은 사용자 에이전트 데이터를 사이트로 전송해
콘텐츠를 훔쳐가지 못하게 막아 준다. 기능이 아주 많은, 포괄적인 피드 보호 방법이다.
• Digital Fingerprinnt 플러그인 http://digwp.com/u/183
각 개인 사용자에 맞게 설정되고 제작된 디지털 지문을 블로그 포스트에 심어놓는다. 일단 포스트에 임베딩해놓으면 플러그인에서 빠르고 쉽게 침입한 곳이 있는지 웹을 검색한다.
• Feed Copyrighter 플러그인 http://digwp.com/u/184
간단하면서 눈에 띄지 않는 저작권 메시지를 피드에 추가한 후 비양심적인 콘텐츠 도둑을 저지한다. 쉽고 빠르며 효과적이다.
P.232 ~ 233

현인처럼 생각하되 평민처럼 말하라
— 윌리엄 버틀러 예이츠
P.238

테마를 이전 버전과 호환되게 사용하려면 comments.php 파일에 wp_list_comment() 함수가 있는지 [PHP function_exists()로] 확인해 본다.
[코드는 책 참고]
P.254

테마에서 스레드 코멘트 기능을 지원하지 않는다면 comments.php 파일 안에서 간단히 스레드 코멘트 [댓글 답변] 기능을 구현할 수도 있다.
P.257

전체적으로 트랙백만 사용할 수 없게 하려면 Disable Trackbacks 플러그인을 사용한다.
P.264

트위터 아바타
아래 무료 스크립트를 사용하면 코멘트와 함께 트위터 아바타를 출력할 수 있다.
http://digwp.com/u/191

functions.php 파일에 스크립트를 추가하고 다음과 같이 테마에 아바타를 표시한다.

P.273

5-2. 코멘트를 위한 리치 텍스트 편집기
[이하 목록이 나온다]
P.280 ~ 283

6-2. 워드프레스용 스팸 방지 플러그인

• Peter`s Custom Anti-Spam http://digwp.com/u/97
캡차(CAPCHA) 방식의 스팸 방지 플러그인으로, 모든 코멘트 작성자가 코멘트를 등옥하기 전에 랜덤 문자를 식별하도록 한다. 문자는 이미지로 표시되며 완벽하게 사용자가 원하는대로 된다.
P.286

[워드프레스 트위터 플러그인]
• Twitter Tools http://digwp.com/u/214
워드프레스와 트위터의 ‘완벽한 통합’을 자랑하며 블로그 내용을 트위터에 올릴 수도 있고, 트위터 내용을 블로그에 올릴 수도 있다. 완벽한 어드민 옵션이 있어 자신에 맞게 설정할 수 있다.
P.290

다음과 같은 템플릿 태그를 사용해 특정 유형의 페이지를 대체하거나 추가할 수 있다.

is_home(), is_page(), is_admin(), is_author(), is_date(), is_search(), is_404(), is_paged(), is_category(), is_tag(), is_date()

날짜 기반의 아카이브(즉, 월별, 연도별, 또는 시간별) 페이지를 대상으로 하려면 이것을 사용한다.

is_archive()

날짜 기반의 아카이브 외에 더 많은 유형이 있다는 점을 기억하기 바란다. 다른 유형의 아카이브 페이지로는 카테고리, 태그, 작성자 페이지가 있다. is_archive()는 이런 페이지 유형을 모두 타깃으로 한다.
그리고 훨씬 더 많은 유형의 조건 태그들을 워드프레스에서 사용할 수 있다. 좀더 자세한 내용은 워드프레스 Codex를 참고.
http://digwp.com/u/3
P.299

[워드프레스, 페이지 특정하기]
특정 포스트 : is_single(17)
특정 페이지 : is_page(17)
특정 카테고리 : is_category(17)
특정 태그 : is_tag('personal')
여러 태그 : is_tag(array('personal', 'family', 'photos'))
특정 태그 : has_tag(array('personal', 'family', 'photos'))
P.300

X-Robot 메타 명령

메타 로봇 태그에서와 똑같은 매개변수를 사용한다. …
index – 페이지를 색인에 포함시킴
noindex – 페이지를 색인에 포함시키지 않음
follow – 페이지에서 링크를 추적함
nosnippet – 설명이나 캐시된 링크를 표시하지 않음
nofollow – 페이지에서 링크를 추적하지 않음
noarchive – 페이지를 캐시/아카이브하지 않음
none – 아무것도 하지 않고 페이지를 무시함
all – 원하는 것은 무엇이나 할 수 있음. 기본 동작임


//지원하는 검색엔진에게 페이지를 색인하고 캐생하라고 명령


[혹은] HTAccess 파일이나 아파치 환경 설정 파일에 추가한다.

# 지정한 파일 유형을 색인하고 아카이브한다.

Header set X-Robots-Tag "index,archive"

자세한 내용은 … http://digwp.com/u/4
P.306

정규[canonical] 태그를 구현할 수 있게 해 두는 주스트 드 발크의 멋진 플러그인도 있다. http://digwp.com/u/185
P.307

www와 non www URL
www URL을 non www URL로 리다이렉트하는 가장 확실하고 쉬운 방법은 루트의 .htaccess 파일에 코드 일부를 추가하는 것이다.

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST}
!^domain\.tld$ [NC]
RewriteRule ^(.*)$ http://domain.tld/$1 [R=301,L]

두 군데의 ‘domain.tld’ 부분을 자신의 도메인으로 바꾸면 모든 것이 끝난다. 좀더 자세한 것을 알고 싶거나 non-www를 www로 리다이렉트하고 싶다면 Perishable Press: http://digwp.com/u/226 을 참고한다.
P.314

앞서 설명한 방법(메타 태그 사용, nofollow 태그 사용, 로봇 명령, 정규 태그, 인용문)과 더불어 Virante.com 과 같은 온라인 중복 콘텐츠 검사기 같은 것을 사용해 많은 중복 콘텐츠 소스를 체크할 수 있다.
… Similarity Check : 성공
구글 상위 1000건의 검색 결과에서 보면 페이지가 유사하다는 이유로 누락된 경우가 하나도 없어 보인다.
P.314

5-1 통계 플러그인
[내용 있음]
P.325 ~ 327

wp-config 기법
wp-config.php 파일에 대한 뛰어난 환경 설정 기법을 보고 싶다면 필자의 웹사이트에 있는 다음 기사를 참고.
http://digwp.com/u/279
http://digwp.com/u/280
P.338

가상의 모든 상황에서 워드프레스의 비밀번호를 변경하기 위해 필요한 모든 것이 담겨 있다.
http://digwp.com/u/283
P.344

[워드프레스 보안 플러그인 모음]
http://digwp.com/u/486
P.354 ~ 355

2-5. 리퍼러가 없는 요청 접근 거부
[폼에서 실제 작성된 것만을 받아들이기 위해] … 다음과 같은, 또 다른 HTAccess 트릭을 사용할 수 있다.
P.358 ~ 359

3-4 온라인 모니터링 서비스
… 가끔씩 사이트가 다운되기도 한다. 예상치 못하게 다운되는 시점을 방지하지는 못하더라도 온라인 모니터링 서비스를 사용해 적절한 방법으로 대응 능력을 개선할 수 있다. 기본적으로 모니터링 서비스는 사이트를 주시하다가 서비스를 사용할 수 없게 되면 알려준다. …
• Are my site up? : http://digwp.com/u/316
하루에 최대 5개의 사이트를 25번까지 무료로 모니터링할 수 있는, 빠르고 쉽고 믿을 만한 사이트 모니터링 서비스다. 프리미엄 서비스는 훨씬 많은 기능을 가지고 있으며, 아이폰 응용 프로그램도 있다. 강추!
• Pingdom : http://digwp.com/u/317
사이트를 사용할 수 없는 상태가 되면 이메일과 SMS로 알려준다. 가동 시간과 전체적인 성능을 모니터링한다.
• Mon.itor.us : http://digwp.com/u/318
이메일을 통보하는 무료 웹사이트 모니터링 서비스. 가동 시간과 반응 시간을 알려준다. 통보 형식은 이메일과 IM, SMS, RSS가 있다.
• Montastic : http://digwp.com/u/319
이메일과 RSS로 알려주는 무료 모니터링 서비스. 10분마다 최대 100개의 URL을 모니터링한다. 사이트가 복구되면 통지한다.
• BasicState : http://digwp.com/u/322
5분마다 무한개의 사이트를 체크하는 웹사이트 가동 시간 모니터링 무료 서비스. 이메일이나 SMS를 통해 문제 발생을 알려 준다. 추천!
P.362 ~ 363

자동으로 업그레이드 메일 받기
워드프레스 어드민에 표시되는 경고 메시지가 도움이 되지만 어드민 영역에 로그인하지 않는다면 경고 메시지를 전혀 볼 수 없다. 다행히 Update Notifier 플러그인 http://digwp.com/u/329 을 사용하면 새로운 버전이 나올 때마다 이메일로 알려준다.
P.364

사이트가 해킹되었는지 어떻게 알 수 있을까? 비양심적인 공격자가 사이트를 뚫고 들어와 수천 개의 보이지 않는 스팸 링크를 주입한다면 어떻게 알아낼 것인가? 구글 패널티를 받을 때까지 기다리는 것은 좋은 전략이 아니다. 대신 사이트를 주시하고 있다가 변경 사항이 있을 경우 알려주는 플러그인을 생각해 보면 어떨까?
• WordPress File Monitor : http://digwp.com/u/330

• MonitorHackdFiles : http://digwp.com/u/331

• ChangeDetection.com : http://digwp.com/u/332
사이트를 모니터링하면서 바뀐 사항이 있을 경우 이메일과 SMS를 보내주는 무료 온라인 서비스. 간단하고 쉽고 효과적이다.
P.365 ~ 366

5-1. 콘텐츠 및 파일 캐싱
… 좋은 캐싱 플러그인은 모든 페이지 요청의 정적인 복사본을 만들어두었다가 뒤이어 일어나는 모든 요청에 대해 그 복사본을 전달함으로써 서버 로딩을 줄인다. …
• WP Cache : http://digwp.com/u/336
정적인 버전의 페이지를 저장하고 전달한다. 데이터베이스를 위한 작업을 전달하지만 동작할 때는 계속 PHP 엔진을 사용한다. [DB는 사용하지 않지만 PHP는 사용한다는 말로 이해된다.. – 형우]
• WP Super Cache : http://digwp.com/u/337
정적인 HTML 버전의 페이지를 만들어 PHP 와 데이터베이스를 호출할 여지를 없앤다.
• Hyper Cache : http://digwp.com/u/340
HTML 페이지 출력을 파일 콘텐츠로 저장한다. PHP 엔진을 사용한다.
• AskApache Crazy Cache : http://digwp.com/u/341
전체 블로그를 캐싱하기 위해 WP-Cache나 WP Super Cache, Hyper Cache를 연결해 작업한다.
• W3 Total Cache : http://digwp.com/u/527
브라우저와 페이지, 객체, 데이터베이스를 최소화하고, 콘텐츠 전송 네트워크 지원 등의 캐싱을 이용해 사이트의 속도와 사용자 경험(user experience)을 손쉽게 최적화한다. 가장 빠르고 완벽한 워드프레스 성능 최적화 플러그인.

어떤 캐싱 플러그인이든 설치하기 전에 문서를 읽어 보는 것이 중요하다. 기본적으로 캐싱은 사이트 수행 작동 방법에 영향을 미치기 때문에 설치에 필요한 조건뿐만 아니라 각 플러그인의 장점과 단점을 이해하는 것도 중요하다.
P.367 ~ 368

쉬운 PHP 압축
PHP 압축에 대한 좀더 많은 정보는 아래 링크 참고.
http://digwp.com/u/343
P.369

파일 압축을 활용하는 데는 여러 가지 방법이 있는 반면, 서버에서 사용할 수 있는 도구와 리소스에 따라 구현 방법이 달라질 수 있다. 가능하다면 mod_gzip이나 mod_deflate를 사용하고 나머지는 잊어도 된다. 이 모듈들을 사용할 수 없다면 또 다른 방법이 있다.
P.370

jQuery 플러그인인 Lazy Load http://digwp.com/u/493 를 이용하면 점진적인 이미지 로딩을 손쉽게 구현할 수 있다.
P.373

핫링크[내 사이트에 있는 이미지 같은 걸 긁어 가서 트래픽을 갉아 먹는 일]에 맞서 사이트를 보호하기 위한 여러 가지 방법을 살펴보고 싶다면 다음 주소 참고.
http://digwp.com/u/294
P.376

워드프레스 포스트에서 태그를 사용해 긴 포스트를 여러 개의 페이지로 나눌 수 있다. 이 기법은 모든 포스트에 사용하기보다는 이미지와 요소가 많은 아주 긴 포스트에 사용하면 속도 개선에 많은 도움이 된다.
P.378

워드프레스 데이터베이스 최적화

• 수동 SQL 쿼리 : 'OPTIMIZE TAVBLE' 명령을 사용해 특정 테이블이나 테이블 그룹을 최적화할 수 있다. 다음 형식을 사용해 예제 용어를 자신의 테이블 이름으로 바꾸면 된다.
OPTIMIZE TABLE 'feeds', 'items', 'options', 'tags'
phpMyAdmin 사용 : 데이터베이스에 있는 모든 테이블을 체크한 후 드롭다운 메뉴에서 ‘Optimize‘를 선택한다.
• 플러그인 사용: 주스트 드 발크 (Joost De Valk)의 Optimize DB 플러그인을 이용하면 손쉽게 데이터베이스를 최적화할 수 있다. http://digwp.com/u/369
• 서로 다른 플러그인 사용 : 데이터베이스를 최적화하고 깨끗하게 정리하는 또 다른 플러그인은 WP-Optimize http://digwp.com/u/370 이다. 최적화 과정을 자동으로 하려면 WordPress Database Table Optimizer http://digwp.com/u/371 도 살펴본다.
• 완전히 서로 다른 플러그인 사용 : WP DBManager 플러그인을 사용해 손쉽게 데이터베이스를 최적화할 수 있고, 자동 데이터베이스 백업 같은 다른 데이터베이스 관리 기능도 사용할 수 있다.

어떤 방법을 선택하든 최적화된 사이트의 성능을 확보할 수 있도록 정기적으로 데이터베이스를 최적화하는 것이 좋다.
P.378

작성자 이름을 가져오는 것은 아주 간단하다. 작성자 이름을 표시하는 워드프레스 내장 함수가 있다.

… 작성자 약력을 가져오는 것도 쉽다. 이것은 상대적으로 덜 알려진 워드프레스 함수다.

약력 정보는 어드민 영역에서 직접 추가할 수 있다. 사용자를 편집하고 약력을 입력한 후 저장한다.

작성자 사진을 가져오는 것은 약간 트릭이 있어야 한다. 가져올 수 있는 루트는 조금씩 다르다. …
작성자의 루프 안에 다음 코드를 삽입하여 포스트에 그라바타를 표시할 수 있다.

$gravatar_link = 'http://www.gravatar.com/avatar/' . md5(get_the_author_meta('user_email')) . '?s=32';
echo '';

User Photo http://digwp.com/u/436 플러그인을 사용하면 작성자 사진 제어권을 워드프레스에 집어넣을 수 있다.
P.384 ~ 385

테마 옵션 패널 코드는 테마의 functions.php 파일 안에 있다. 이 코드는 다음과 같은 역할을 한다.
• 어드민에 메뉴 옵션과 옵션 페이지를 추가한다.
• 데이터베이스에 알맞은 사용자 피드백과 함께 정확한 값을 저장해 준다.
• 옵션을 쉽게 추가해준다.
P.386

[워드프레스는 비디오 URL만 붙여 넣으면 자동으로 비디오를 임베트해 준다. 이렇게 해 주는 비디오 사이트는] 워드프레스 Codex에 있는 공식적인 ‘Embeds‘ 문서를 참고한다. http://digwp.com/u/426
P.393

2-5. [내장돼 있는] 데이터베이스 관리 도구

define('WP_ALLOW_REPAIR', true); // 데이터베이스 도구를 사용할 수 있게 한다.

이 코드를 입력했으면 어드민으로 로그인해서 다음 URL을 방문한다.

http://example.com/wp-admin/maint/repair.php
P.393

멀티사이트를 사용하게 하려면 사이트의 wp-config.php 파일에 아래 코드를 추가한다.

define('WP_ALLOW_MULTISITE',true);

수정한 wp-config.php 파일을 서버로 업로드하면 어드민 Tools(도구) 메뉴 아래에 새로운 링크인 Network Setup(네트워크 설정)이 표시된다. 그 링크를 클릭하면 ‘Creat a Network’ 페이지로 연결되고 여기서 몇 가지 옵션을 정의한 후 네트워크를 만들 수 있다.
P.412

WordPress Tarvern에 ‘워드프레스에서 멀티사이트를 설정한 후 해야 하거나 고려해야 할 점’이라는 뛰어난 기사가 포스팅되 있다. http://digwp.com/u/483
P.416

워드프레스 3.0에서 메뉴 사용하기
… 저세한 튜토리얼은 ‘Using Menus in WordPress 3.0’을 참고. http://digwp.com/u/502
P.420

3-1. [워드프레스 3.1에서 추가된] 사용자 정의 포스트 형식(Custom Post Format)
… 기본으로 워드프레스 3.1은 10개의 다양한 Format(포스트 형식)을 가지고 있고 형식마다 각자의 목적이 있다.

• Standard – 일반적인 블로그 포스트(형식 없음)
• Aside – 짧은 안내문, 랜덤한 생각 등
• Chat – 인스턴트 메시지나 채팅을 통한 대화
• Gallery – 이미지나 기타 미디어 파일 그룹
• Image – 이미지
• Link – 뛰어난 리소스로 연결하는 멋진 링크
• Quote – 인용
• Status – 트위터 같은 제 3자 서비스 업데이트
• Video – 비디오, 스크린캐스트, 슬라이드쇼 등
• Audio – 오디오 클립, 노래, 팟캐스트
P.428 ~ 429

👇 카테고리 글 목록

대표글

댓글 남기기