WordPress : 기존 (생성된) HTML 페이지 통합
한쪽에는 기존의 워드프레스 사이트가 있습니다.
다른 하나는 기존에 생성된 수많은 (실제로 일부 문서 페이지) 정적 HTML 페이지 : 수백...
저는 기존 HTML 페이지를 워드프레스 사이트에 통합하고 싶습니다.
WordPress 관리 콘솔에서 편집할 필요가 없습니다.단순히 웹 사이트의 전체적인 모양(헤더, 바닥글 등)과 일치하고 이러한 페이지에 대한 탐색(WordPress 페이지에서)이 작동하도록 하기 위해서입니다.
이것이 가능한지 그리고 어디에서 몇 가지 예시/자습서/기존 플러그인을 찾아야 하는지에 대한 아이디어가 있습니까?
참고 1: 생성 프로세스를 완전히 제어하여 필요에 따라 생성된 페이지의 내용을 WordPress 요구에 맞게 조정할 수 있습니다.
주 2 : 기존 HTML 페이지 전체가 수시로 재생성됩니다.그래서 저는 워드프레스 사이트를 그에 맞게 업데이트해야 할 것입니다.
..htaccess
워드프레스에 의해 제공됨:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
이렇게 하면 워드프레스 사이트에서 URL이 예쁠 수 있도록 다시 쓰기 규칙을 구성합니다.흥미로운 2가지 대사는 다음과 같습니다.
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
이 줄은 Apache 서버에 요청된 파일(1번째 줄) 또는 폴더(2번째)가 있는지 확인하도록 지시합니다.존재할 경우 반환되며, 존재하지 않을 경우 재작성 규칙이 적용됩니다(블로그는 평소와 같이 표시됨).따라서 웹 공간의 루트(종종 또는 )에 폴더를 만들고 생성된 파일을 업로드할 수 있습니다. 이러한 파일은 브라우저(http://www.yourdomain.com/yourfolder/yourfile.html) 에서 액세스할 수 있습니다.
이것이 블로그 페이지 옆에 정적으로 생성된 콘텐츠를 표시하는 가장 간단한 방법이라고 생각합니다.이를 사용하면 생성된 파일의 테마에서 헤더/풋터/사이드바를 통합해야 합니다.
@Binod answer를 사용할 수도 있고, 생성된 페이지에서 워드프레스 기능을 직접 사용할 수도 있습니다.*.html 페이지에서 php 코드를 실행하거나 *.php 파일을 직접 생성하여(가능한 경우).
워드프레스 테마에 페이지 템플릿을 작성하고 이름을 "page-external.php"라고 지정하면 템플릿 페이지 코드는 다음과 같습니다.
<?php
/**
* Template Name: External HTML Pages
*
*/
?>
<?php get_header(); ?>
<?php if ( have_posts() ) : ?>
<?php while ( have_posts() ) : ?>
<?php the_post(); ?>
<?php the_content(); ?>
<?php endif; ?>
<?php get_footer() ?>
이 템플릿은 wp 페이지 관리자의 텍스트 편집기에 입력할 페이지의 내용을 표시하는 기본 워드프레스 루프입니다.(옆줄, 위젯 등이 있는 경우 템플릿을 변경할 수 있습니다.)트릭은 페이지 관리자의 텍스트 편집기에서 외부 페이지 url의 매개 변수와 함께 워드 프레스 쇼트 코드를 추가하여 잡을 것입니다.
예를 들면 [externalpage href="http://www.mydomain.com/page"
]
짧은 코드를 만드는 것은 wordpress api http://codex.wordpress.org/Shortcode_API 에 쉽고 잘 기록되어 있습니다.
쇼트 코드에서 외부 페이지 콘텐츠를 잡으려면 get_file_content() php 함수나 CURL을 사용합니다.
function grab_externalpage_func(){
return file_get_contents('http://www.mydomain.com/page');
}
add_shortcode( 'externalpage ', 'grab_externalpage_func' );
그래서 결국, 외부의 기존 페이지를 추가하는 것은 새로운 페이지 템플릿을 만들고 텍스트 편집기에 숏코드를 추가하는 것처럼 간단할 것입니다. 그리고 다른 모든 페이지와 마찬가지로 wordpress admin의 메뉴에 get_header()와 get_outer()를 추가하는 것으로 여전히 이득을 볼 수 있습니다. :)
.htaccess 파일에서 php_flag를 사용할 수 있으며 PHP의 내장 자동 추가/미리 보기 설정을 사용할 수 있습니다.
php_value auto_prepend_file "docs_header.php"
php_value auto_append_file "docs_footer.php"
- 그것들을 빙빙 돌립니다.
- 각 페이지의 내용을 파악합니다.
- 각 페이지의 본문(posts-tags)을 db > wp_stripped 테이블에 삽입하고, 그 종류는 페이지입니다.
옵션:
HTML에서 PHP 실행: http://php.about.com/od/advancedphp/p/html_php.htm
그런 다음 HTML 파일의 처음 부분에서:
<?php global $wp, $wp_query, $wp_the_query, $wp_rewrite, $wp_did_header; //to initialize WP environment
require('<path to wp-load.php>' . 'wp-load.php'); ?>
그러면 HTML 파일의 적절한 위치에서 아래 WP 기능을 사용할 수 있습니다.
상위: http://codex.wordpress.org/Function_Reference/get_header
메뉴: http://codex.wordpress.org/Function_Reference/wp_nav_menu
아래: http://codex.wordpress.org/Function_Reference/get_footer
주의:
HTML 파일은 WordPress와 동일한 도메인에 복사해야 합니다.
테스트 안 함.
페이지를 csv 파일로 내보내고 "Really Simple CSV Importer"를 사용하여 콘텐츠를 가져올 수 있습니다.
설치가 쉽고 설치 후에는 관리 --> 도구 -> 가져오기에서 사용할 수 있습니다.또한 샘플 csv 파일을 제공하고 다음과 같이 보일 것입니다.
"post_id","post_name","post_author","post_date","post_type","post_status","post_title","post_content","post_category","post_tags","custom_field"
저는 3-4년 전에 닷넷누크에서 만들어진 300페이지짜리 웹사이트를 가지고 있었고 이것을 워드프레스로 옮기는 데 큰 고통을 겪었습니다.그래서 제가 한 일은 db에서 dotnetnuke 콘텐츠를 모두 꺼내고 csv 파일을 내보내는 C# 프로그램을 작성한 것입니다.한 50개 정도로 묶었어요.
우리가 추가로 해야 할 일은 csv 파일을 생성하는 것뿐입니다.또한 테스트 설치를 먼저 시도한 다음 결과에 만족하는지 확인해야 할 수도 있습니다. 프로덕션에서 이 작업을 실행해야 할 수도 있습니다.
저의 경우 HTML & category를 이전에 제대로 설정하지 못했기 때문에 편집해야 했습니다.하지만 여러분이 조금만 조심하고 여러분의 일을 계획한다면, 여러분은 많은 일을 절약할 수 있습니다.
언급URL : https://stackoverflow.com/questions/20874731/wordpress-integrate-existing-generated-html-pages
'programing' 카테고리의 다른 글
스크립트에서 별칭 제거 (0) | 2023.10.04 |
---|---|
동시에 여러 개의 Ajax 호출 (0) | 2023.10.04 |
단추에서 테두리 제거 (0) | 2023.10.04 |
haveing 절'에 알 수 없는 열이 있습니다. (0) | 2023.10.04 |
초기화되지 않은 정수는 항상 c에서 0으로 기본 설정됩니까? (0) | 2023.10.04 |