programing

Wordpress 3.9 - 4.1 및 qTranslate 문제

bestprogram 2023. 3. 23. 23:16

Wordpress 3.9 - 4.1 및 qTranslate 문제

Wordpress를 소프트웨어 3.9의 마지막 버전으로 업그레이드한 후 버그가 발견되었습니다.

다음의 에러가 표시됩니다.

2014년 4월 17일 (목) 17:21:52 [http]mod_fcgid: stderr: PHP 캐치 가능한 치명적인 오류: 클래스 WP_Post 개체를 455행의 /wp-content/plugins/qtranslate/qtranslate_core.ht에서 문자열로 변환할 수 없습니다.http://www.mywebsite.com/

왜 이런 일이 일어날까요?

해결했습니다!!

"를 제거해야 합니다.$before「」의 인스톨.qtranslate_core.phpqtranslate는 여기서 동작합니다.WP 3.9!

따라서 결과는 다음과 같아야 합니다.

return strftime($format, $date).$after;

기다리고 있겠습니다.qTranslate업그레이드!

감사해요.

저는 이 문제를 직접 조사한 후 제 2센트를 추가하고 싶었습니다.나는 WP의 핵심이나 플러그인을 해킹하는 것을 좋아하지 않는다.이 스레드의 작성자가 지적한 에러가 발생했을 때, 다음의 순서로 수정했습니다.Settings -> Languages를 클릭합니다.Advanced Settings탭을 클릭합니다.

아래쪽에Date / Time Conversion섹션 첫 번째 옵션으로 설정되었습니다.Use emulated date function.로 바꿨습니다.Use strftime instead of date.그리고 voila, 더 이상 실수하지 말고 코어를 해킹하지 마!

이것이 효과가 있었는지, 또는 문제가 있었는지에 대해 다시 보고합니다.

Wordpress: v3.9.1 q 번역: v2.5.39

제 경우(WP 4.1.1, qTranslate 2.5.39)는 다음과 같이 도움이 되었습니다.

  1. 대시보드에서 [Plugins]> [ qTranslate ]> [ Settings ]으로 이동합니다.
  2. [상세설정] 링크를 클릭합니다.
  3. "날짜/시간 변환" 설정 그룹에서 "날짜 대신 strftime 사용"을 선택하고 각 언어의 미리 정의된 형식으로 형식을 바꿉니다."("날짜 대신 strftime 사용"으로 설정됨).

보일라!

유감스럽게도 위의 모든 것이 제겐 효과가 없었습니다만, 저는 다른 해결책을 찾았습니다.그것은 문제를 해결하는 데 도움이 되었습니다.

파일 qtranslate_core에 있습니다.php 이 행을 변경해야 합니다.

function qtrans_dateFromPostForCurrentLanguage($old_date, $format ='', $before = '', $after = '') {

로.

function qtrans_dateFromPostForCurrentLanguage($old_date, $format ='') {

그리고 이 행은

return qtrans_strftime(qtrans_convertDateFormat($format), mysql2date('U',$post->post_date), $old_date, $before, $after);

로.

return qtrans_strftime(qtrans_convertDateFormat($format), mysql2date('U',$post->post_date), $old_date);

언급URL : https://stackoverflow.com/questions/23137526/wordpress-3-9-4-1-and-qtranslate-issue