일단...내가 곧 할 순서를 정리하려고 쓴다.

상황을 간단하게 적자면 우분투->아파치->wordpress를 통해 서버 구축을 완료했고
내부 데이터와 프론트를 만져서 얼추 형태를 갖춰놨지만..
뭐가 마음에 안 드셨는지 특화된 페이지를 만들고 DB테이블을 넣어라 라는 하늘이 무너지는 소리를 들음...

약 25년 경력 DB 아키텍쳐 전문가이신 아버지의 말씀을 주축으로 하여 조사를 시작했다.

그 결과 mysql에서 테이블을 만들고 wordpress화면으로 뿌리려면 초기 설정에서 mysql사용자 계정 정보를 넣어야 한다는 것....
다행인 것은 내가 설치한 내부 플러그인으로 프론트에서 만든 테이블이 mysql로 설정이 되어 백 데이터로 들어간다는 소식이었다.

어쨌거나 mysql 데이터를 생성한 것이니 교수님의 니즈를 충족한 것이 아닐까 했지만
방법을 찾아보니 php파일 설정을 건들여서 하는 방식이 있더라..

몇시간 후의 나를 위해 정리 시작

1

편집기를 사용해서 php파일을 텍스트로 불러옴

편집기 중에서는 Sublime Text, Visual Studio Code, Notepad++, Atom 등을 사용하면 됨

파일 위치: WordPress를 설치한 디렉토리 내에 wp-config.php 파일이 있음
이 파일은 WordPress의 핵심 설정 파일로, MySQL 데이터베이스 연결 정보 등이 포함되어 있음

텍스트 편집기 열기: 원하는 텍스트 편집기를 열고, wp-config.php 파일을 해당 편집기로 불러옴

데이터베이스 정보 찾기: 파일 내에서 DB_NAME, DB_USER, DB_PASSWORD, DB_HOST와 관련된 부분을 찾아야됨

define('DB_NAME', 'your_database_name');
define('DB_USER', 'your_database_user');
define('DB_PASSWORD', 'your_database_password');
define('DB_HOST', 'localhost');

이런 형태

각각의 define 라인에서 'your_database_name', 'your_database_user', 'your_database_password', 'localhost' 등을 실제 데이터베이스 정보로 수정해야함

예를 들어: define('DB_NAME', 'mydatabase');
define('DB_USER', 'myusername');
define('DB_PASSWORD', 'mypassword');
define('DB_HOST', 'localhost');

이렇게 php파일로 초기설정없이 mysal이 wordpress서버에 붙을 수 있도록 함

2

서버 측 코드 작성: PHP를 사용하여 사용자의 게시물 수를 집계하고, 호칭을 결정하는 서버 측 코드를 작성

mysal에서 데이터 베이스 구성
CREATE TABLE users (
id INT PRIMARY KEY AUTO_INCREMENT,
username VARCHAR(255),
email VARCHAR(255),
registration_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

CREATE TABLE posts (
id INT PRIMARY KEY AUTO_INCREMENT,
user_id INT,
content TEXT,
post_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
FOREIGN KEY (user_id) REFERENCES users(id)
);
3.
function get_user_post_count(user_id) { global $wpdb; $post_count = $wpdb->get_var("SELECT COUNT(*) FROM {wpdb->prefix}posts WHERE post_author = $user_id AND post_type = 'post'");
return $post_count;
}

function get_user_title(user_id) { $post_count = get_user_post_count(user_id);

if ($post_count < 10) {
    return "초보";
} elseif ($post_count < 50) {
    return "중수";
} else {
    return "고수";
}

}

3

wordpress 화면과 생성한 DB연결

프론트엔드 코드 작성: WordPress 테마나 페이지 템플릿 파일에서 PHP 함수를 호출하여 사용자의 호칭을 가져오고 이를 화면에 표시

4

프론트와 연결

servername="localhost";servername = "localhost";username = "username";
password="password";password = "password";dbname = "database";

conn=newmysqli(conn = new mysqli(servername, $username, $password, $dbname);

if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}

데이터를 WordPress 화면에 표시: 해당 데이터를 적절한 방법으로 WordPress 테마 또는 플러그인에서 출력하면 된다.


이 다음은 뭐....테마 파일에서 기능이 지원 안 되나...?그럼 망하는 거고...
일단 여기 까지가 최선 인 것 같다.

혹시나 이 방법에 대해 자세하게 아시는 개발자 분들은 많은 조언 남겨주세요..
병아리 개발자가 말라갑니다ㅠㅠㅠㅠ 성공해서 후기를 들고 올 수 있길

profile
입니다.

0개의 댓글