2012-07-02 3 views
1

MediaWiki 사이트에서 이미지의 파일 이름을 찾으려면 어떻게합니까?
파일 이름을 수동으로 지정하고 싶지 않습니다. 필자에게 파일 이름을 가져올 PHP 코드가 필요합니다.
$f = wfFindFile('$filename');을 사용할 수 있지만 어떻게하면 $ filename을 얻을 수 있습니까?
FILE 클래스를 살펴 봤지만 사용 방법을 알 수 없습니다. File::getFilename(); 계속 오류가 발생합니다. call to undefined method.

내가 뭘 잘못하고 있니?
PHP를 사용하여 MediaWiki 페이지에서 이미지의 파일 이름을 찾는 방법은 무엇입니까?

자세히 설명 : 버튼을 클릭하여 내 사이트에 버튼을 추가하고 싶습니다. 버튼을 클릭하면 이미지 및 이미지 설명과 함께 보드에 게시됩니다. 내 사이트의 모든 페이지에서 작동하도록 이미지 정보를 보내려면 PHP를 사용해야합니다. 매번 수동으로 이미지 이름을 코딩 할 수 없습니다. 나는 $ f를 (이미지 이름)의 값에 넣어야 제외하고 위대한 작품을

 <a href="http://pinterest.com/pin/create/button/?url=' . urlencode($f->getFullURL()).'&media='.urlencode($f->getCanonicalUrl()).'&description='.urlencode($f->getDescription()) .'" class="pin-it-button" count-layout="horizontal"><img border="0" src="//assets.pinterest.com/images/PinExt.png" title="Pin It" /></a> 

: 지금까지 나는 코드가 있습니다. 내 질문은 $ f = wfFindFile ('Sunset.jpg');에 넣지 않아도 $ f의 값을 얻는 방법입니다. 나는 이것이 그들의 사이트에 pinterest를 추가하려고하는 누군가를위한 정말 일반적인 요청이라고 생각했을 것이다. 감사합니다.

+0

당신이 우리에게 오류를 일으키는 코드를 보여줄 수 :

실제로 사용자의 브라우징 페이지의 파일 이름을 찾으려면 쿼리 컨텍스트를 사용하여 제목을 얻으려면? – svick

답변

3

찾고있는 $ 파일 이름은 기본적으로 MediaWiki에서 업로드했을 때의 이름입니다 (예 : Landscape-plain.jpg). wfFindFile() 도우미 함수를 사용하여 File 객체를 가져옵니다. 그런 다음 메소드를 호출 :

$ PHP는 유지 보수/eval.php

> $ 파일 = wfFindFile ('풍경 - plain.jpg');

> print $ file-> getName();

풍경 - plain.jpg

> 인쇄 $ 파일 -> getPath();

mwstore : //local-backend/local-public/b/b0/Landscape-plain.jpg

> $ 파일 -> getFullPath()를 인쇄;

/path/to/images/b/b0/Landscape-plain.jpg

> 인쇄 $의 파일 -> 인 getTitle();

파일 : Landscape-plain.JPG

> 출구

API 문서 :

아래 편집

파일 정보는 File 객체를 통해 사용할 수 있으므로 wfFindFile()을 사용하여 이러한 객체를 가져와야합니다.

$context = RequestContext::getMain(); 
$t = $context->getTitle(); 


if($title->getNamespace == 'NS_FILE') { 
    $filename = $title->getPrefixedText; 
// do your stuff. 
} 
+0

내가 가진 문제는 내가 파일 이름을 입력하고 싶지 않다는 것입니다. PHP를 사용하여 페이지 정보를 읽고, 페이지에서 이미지를 찾고 파일 이름을 채우려면 어떻게해야합니까? Landscape-plain.jpg에는 입력 할 수 없으며 너무 많은 페이지와 이미지가 변경됩니다. 나는 그것이 자동적 일 필요가있다. – LTech

+0

뭘하고 싶은지 설명해 주시겠습니까? :-) –

+0

내 사이트에 pinit 버튼을 추가하려고합니다. 단추를 클릭하면 이미지 이름과 설명을 URL로 보내려고합니다. 나는 pinterest 사이트의 코드를 가지고 있지만 모든 페이지에서 작동하도록 만들려고하고 매회 수동으로 이미지 정보를 넣을 필요가 없다. (예 : opengraph와 같은 페이스 북). – LTech

관련 문제