간단한 블로그를 시작하든, 기업 웹사이트를 만들든, WordPress로 창의적인 포트폴리오를 구축하든, 문의하기 페이지는 (거의) 항상 필요하며, 문의 양식을 갖는 것이 (거의) 항상 더 좋습니다. 이메일 주소를 공유하는 것보다 공개적으로(스팸 봇이 좋아하지만) 물론 WordPress에는 훌륭한 문의 양식 플러그인이 많이 있습니다. 하지만 멋지고 간단한 사용자 정의 단축 코드 플러그인을 대신 사용할 수 있는데 왜 데이터베이스 쿼리가 많은 무거운 플러그인으로 사이트를 부풀리나요?
플러그인은 훌륭하지만 그 중 너무 많은 기능이 필요하지 않으며 데이터베이스 연결 사용, 추가 PHP 코드 실행, 헤더에 CSS 스타일시트 및 JS 파일 추가 등으로 인해 사이트가 너무 커질 수 있습니다. 어느 시점에서는 사용하려는 플러그인이 아무리 훌륭하더라도 기존 플러그인에서 벗어나고 싶을 때가 있습니다.
코딩 방법을 모른다면 손이 (다소) 묶여 있고 플러그인을 사용해야 한다는 점을 인정해야 합니다. 그러나 어떤 수준에서든 WordPress 개발에 익숙하다면(그리고 여전히 나와 함께 있기 때문에 아마 그럴 것이라고 가정합니다) 자신만의 테마를 해킹하거나 플러그인을 작성하는 것의 이점을 고려해야 합니다. 제 생각에는 다음과 같은 장점이 있습니다.
자, 잡담은 그만하고 코딩을 시작해 볼까요! 여기서는 엄청난 양의 코드나 어떤 종류의 힘든 작업을 다루지 않을 것이므로 PHP 및/또는 WordPress의 초보자라도 내 가이드를 따르고 어느 부분이든 공부하면 코드를 이해할 수 있습니다. 그것. 인식할 수 없는 코드입니다.
이 코드를 테마의 functions.php 파일에 직접 넣을 수 있지만 더 좋은 방법은 플러그인으로 사용하는 것입니다. 이렇게 하면 테마를 전환할 때 기능이 손실되지 않고 콘텐츠에 단축 코드가 인쇄되는 일이 발생하지 않습니다. 표준 플러그인 정보부터 시작해 보겠습니다.
으아아아get_the_ip()
함수 이름에서 알 수 있듯이 사용자가 프록시 서버를 통해 연결하더라도 사용자의 실제 IP 주소를 가져옵니다. 물론 완벽한 것은 아니지만 어쨌든 사용자를 위한 추가 정보로 사용합니다.
기본적으로 우리는 달라지려고 노력할 것입니다$_SERVER
变量:分别为 HTTP_X_FORWARDED_FOR
、HTTP_CLIENT_IP
和 REMOTE_ADDR
. 코드는 다음과 같습니다:
Wptuts+에서 내 게시물을 팔로우하시면 제가 WordPress의 Shortcode API를 절대적으로 사랑한다는 것을 아실 것입니다.
단축코드를 더 잘 설명하기 위해 3부분으로 나누겠지만, 먼저 단축코드 기능을 켜고 끄는 것을 잊지 마세요:
으아아아가벼움을 유지하면서 유연성을 유지하려면 일부 속성을 설정해야 합니다. 다음은 10가지입니다:
으아아아코드에서는 이를 속성 이름이 있는 변수(예: $label_submit
)로 참조한다는 점을 기억하세요.
이것은 함수에서 가장 중요한 부분이므로 코드 에서 다음 주석 라인을 사용하여 코드를 계속 설명하겠습니다.
으아아아이 부분은 물론 이전 부분만큼 중요합니다. 결국 이전 코드는 문의 양식 없이 어떻게 이메일을 보낼 수 있습니까? :)
으아아아팁: 문의 양식의 HTML 코드를 자세히 살펴보면 추가 $subject
变量。还记得没有默认值的简码属性“subject”吗?这意味着如果您想设置默认主题,您可以使用这样的短代码: [contact subject="Job application"]
返回简码的
最后一点非常简单:如果电子邮件已发送,则显示成功消息,或者显示电子邮件表单和错误消息(如果有)。代码如下:
if ( $sent == true ) { return $info; } else { return $info . $email_form; }
如果电子邮件已发送,我们不会再次显示该表单,但如果您仍想显示该表单,可以使用以下简单的行:
return $info . $email_form;
当然,代码本身看起来不太好。通过一些化妆、CSS,我们可以使我们的表单更漂亮。将这些 CSS 代码行添加到主题的 style.css 文件中:
.contact-form label, .contact-form input, .contact-form textarea { display: block; margin: 10px 0; } .contact-form label { font-size: larger; } .contact-form input { padding: 5px; } #cf_message { width: 90%; padding: 10px; } #cf_send { padding: 5px 10px; }
如果一切正确,您将看到类似于下图的内容:
恭喜,您刚刚构建了自己的联系表单短代码!
这个简单的联系表单对于大多数网站来说已经足够了,但是如果您想向其中添加更多字段,您只需编辑表单并将 $form_data['name_of_the_new_field']
变量添加到 $email_message
中变量(并且可能将字段名称添加到 $required_fields
数组中。
如果您对如何改进此代码或显示您使用该代码的网站页面有任何想法,请在下面与我们分享您的评论!
위 내용은 기본 요구 사항으로 문의 양식 생성 단순화의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!