it-swarm-ko.tech

특정 캐시 기능을 플러그인합니까?

내 블로그의 각 링크 앞에 (구글) favicon을 넣는 플러그인을 작성했습니다. 정말 간단합니다. 그냥 hrefs에 대한 간단한 preg_replace_callback을 사용합니다.

$changed_html_reference = preg_replace_callback(self::HTML_REF_REGEX, 
   array($this,'AddExtraHtmlToOneHref'), $strHtmlBodyText);

~와

add_filter('the_content', array($this,'ReplaceAll'), 9);

대체 및 아이콘에 대한 Google 사이트에 대한 기본 호출 (수업 종료 후 건너 뛰기) :

const GOOGLE_ICON_URL = 'http://www.google.com/s2/favicons?domain=';
function HttpDownloadFeed()
{
 $parsed_url = parse_url($this->url);  
 $data_r = wp_remote_get(self::GOOGLE_ICON_URL . $parsed_url['Host']);
 $data = $data_r['body'];
 return $data;
}

이제는 디렉토리에 아이콘을 저장하는 캐시 클래스를 만드는 방법을 취했습니다. /cache/com/facebook/www/f.png.

하지만 지금은 그 반의 위치를 ​​생각하고 있습니다. 용이성을 위해 캐시를 wp-content 디렉토리에 두었습니다. 다음과 같은 질문이 있습니다.

  • 나에게 캐싱을 할 수있는 기존 캐시/캐시 플러그인을 플러그인 할 수 있습니까?
  • 내 자신의 캐시를위한 최고의 위치는 무엇입니까?/wp-content/cache 또는/plugins/myplugin/mycache 또는 심지어/themes/mytheme/cache 아래에 넣어야합니까?

아니면 더 나은 접근법이 있습니까?

(나는 stumbleupon, 맛있는 등 ...의 세션 날짜를 저장하기 때문에 com/facebook/www 접근법을 사용하고 있습니다.이 페이지/피드를 한 번만 포함하면 Google favicon에 대한 요청입니다.) 나는 아이콘을 표시 할 필요가 있고, HTML에 내장 된 아이콘을 표시하는 모든 브라우저 지원이 클라이언트에서 사용할 수있는 디렉토리에이를 작성해야합니다.

2
edelwater

대부분의 WordPress 캐싱 기능은 필요한 경우 텍스트를 염두에두고 설정됩니다. 바이너리 데이터를 저장해야하므로 자체 캐시를 유지하는 것이 좋습니다.

캐시의 위치는 다음과 같이 생각됩니다.

  • 단일 개인 설치를 위해 나는 짧은 디렉토리를 선택하고 Nice URL을 만듭니다. 예를 들어 아이콘을 /images/icons/에 저장합니다 (/images/는 모든 이미지에 대한 내 디렉토리 임)
  • 다른 설치 또는 다른 사용자가 사용할 수있는 무언가를 위해 나는 /plugins/myplugin/mycache/이 기능이 플러그인으로 패키징되어 있다면 가장 이해가된다고 생각합니다 (테마 디렉토리의 경우, 테마 디렉토리에서도 같음)
2
Rarst

나에게 캐싱을 수행하기 위해 기존 캐시/캐시 플러그인을 플러그인 할 수 있습니까?

예, 그렇습니다.하지만 문제가되는 것이 맞습니다. 파일 시스템은 이미지 파일을위한 꽤 좋은 데이터베이스입니다.

내 캐시에 가장 적합한 위치는 무엇입니까? 나는 그것을 /wp-content/cache 또는 /plugins/myplugin/mycache 또는 심지어 /themes/mytheme/cache에 두어야합니까? 아니면 더 나은 접근법이 있습니까?

항상 간단한 장소는 uploads 폴더의 하위 폴더이며, 쓰기 가능한 폴더입니다.

1
hakre