proxio 主題微調

This commit is contained in:
tangly1024
2025-04-13 12:00:47 +08:00
parent 4bdde35969
commit 8e5f1badae
12 changed files with 32 additions and 159 deletions

View File

@@ -34,7 +34,7 @@ export const Blog = ({ posts }) => {
return (
<div key={index} className='w-full px-4'>
<div
className='wow fadeInUp group mb-10 relative overflow-hidden'
className='wow fadeInUp group mb-10 relative overflow-hidden blog'
data-wow-delay='.1s'>
<div className='relative rounded-xl border overflow-hidden shadow-md dark:border-gray-700 dark:bg-gray-800'>
{item.pageCoverThumbnail && (

View File

@@ -7,8 +7,9 @@ import Link from 'next/link'
* 用户的公告栏内容将在此显示
**/
export const CTA = () => {
if (!siteConfig('PROXIO_CTA_ENABLE')) {
return <></>
const enable = siteConfig('PROXIO_CTA_ENABLE')
if (!enable) {
return null
}
return (
<>
@@ -18,8 +19,7 @@ export const CTA = () => {
<div className='relative overflow-hidden'>
<div className='-mx-4 flex flex-wrap items-stretch'>
<div className='w-full px-4 mb-2'>
<div className='mx-auto max-w-[570px] text-center'>
<div className='mx-auto max-w-[570px] text-center wow fadeInUp' data-wow-delay='.2s'>
<div>
<span className='px-3 py-0.5 rounded-2xl dark:bg-dark-1 border border-gray-200 dark:border-[#333333] dark:text-white'>
{siteConfig('PROXIO_CTA_TITLE')}

View File

@@ -1,100 +0,0 @@
import { siteConfig } from '@/lib/config'
import CONFIG from '../config'
import { SVGEmail } from './svg/SVGEmail'
import { SVGLocation } from './svg/SVGLocation'
/* eslint-disable react/no-unescaped-entities */
export const Contact = () => {
const url = siteConfig('PROXIO_CONTACT_MSG_EXTERNAL_URL')
return (
<>
{/* <!-- ====== Contact Start ====== --> */}
<section id='contact' className='relative py-20 md:py-[120px]'>
<div className='absolute left-0 top-0 -z-[1] h-full w-full dark:bg-dark'></div>
<div className='absolute left-0 top-0 -z-[1] h-1/2 w-full bg-[#E9F9FF] dark:bg-dark-700 lg:h-[45%] xl:h-1/2'></div>
<div className='container px-4'>
<div className='-mx-4 flex flex-wrap items-center'>
{/* 联系方式左侧文字 */}
<div className='w-full px-4 lg:w-7/12 xl:w-8/12'>
<div className='ud-contact-content-wrapper'>
<div className='ud-contact-title mb-12 lg:mb-[150px]'>
<span className='mb-6 block text-base font-medium text-dark dark:text-white'>
{siteConfig('PROXIO_CONTACT_TITLE')}
</span>
<h2 className='max-w-[260px] text-[35px] font-semibold leading-[1.14] text-dark dark:text-white'>
{siteConfig('PROXIO_CONTACT_TEXT')}
</h2>
</div>
<div className='mb-12 flex flex-wrap justify-between lg:mb-0'>
<div className='mb-8 flex w-[330px] max-w-full'>
<div className='mr-6 text-[32px] text-primary'>
<SVGLocation />
</div>
<div>
<h5 className='mb-[18px] text-lg font-semibold text-dark dark:text-white'>
{siteConfig(
'PROXIO_CONTACT_LOCATION_TITLE',
null,
CONFIG
)}
</h5>
<p className='text-base text-body-color dark:text-dark-6'>
{siteConfig(
'PROXIO_CONTACT_LOCATION_TEXT',
null,
CONFIG
)}
</p>
</div>
</div>
<div className='mb-8 flex w-[330px] max-w-full'>
<div className='mr-6 text-[32px] text-primary'>
<SVGEmail />
</div>
<div>
<h5 className='mb-[18px] text-lg font-semibold text-dark dark:text-white'>
{siteConfig(
'PROXIO_CONTACT_EMAIL_TITLE',
null,
CONFIG
)}
</h5>
<p className='text-base text-body-color dark:text-dark-6'>
{siteConfig('PROXIO_CONTACT_EMAIL_TEXT')}
</p>
</div>
</div>
</div>
</div>
</div>
{url && url !== '' && (
<>
{/* 联系方式右侧留言 */}
<div className='w-full px-4 lg:w-5/12 xl:w-4/12'>
<div
className='wow fadeInUp rounded-lg bg-white px-8 py-10 shadow-testimonial dark:bg-dark-2 dark:shadow-none sm:px-10 sm:py-12 md:p-[60px] lg:p-10 lg:px-10 lg:py-12 2xl:p-[60px]'
data-wow-delay='.2s'>
{/* 自定义的留言表单 、 需要对接接口 */}
{/* <MessageForm/> */}
{/* 嵌入外部表单 */}
<iframe
src={siteConfig(
'PROXIO_CONTACT_MSG_EXTERNAL_URL',
null,
CONFIG
)}
width='100%'
height='500px'
frameBorder='0'></iframe>
</div>
</div>
</>
)}
</div>
</div>
</section>
{/* <!-- ====== Contact End ====== --> */}
</>
)
}

View File

@@ -19,7 +19,7 @@ export const FAQ = () => {
<>
{/* <!-- ====== FAQ Section Start --> */}
<section className="relative overflow-hidden bg-white pb-8 pt-20 dark:bg-dark lg:pb-[50px] lg:pt-[120px]">
<div className="max-w-2xl mx-auto">
<div className='max-w-2xl mx-auto wow fadeInUp' data-wow-delay='.2s'>
<div className="-mx-4 flex flex-wrap">
<div className="w-full px-4">
<div className="mx-auto mb-[60px] max-w-[520px] text-center flex flex-col space-y-4">
@@ -39,7 +39,7 @@ export const FAQ = () => {
</div>
{/* FAQ 列表 */}
<div className="-mx-4 flex flex-wrap space-y-4">
<div className='-mx-4 flex flex-wrap space-y-4 wow fadeInUp' data-wow-delay='.2s'>
{FAQS?.map((faq, index) => (
<div
key={index}

View File

@@ -15,7 +15,7 @@ export const Features = () => {
<section className='pb-8 pt-20 dark:bg-dark lg:pb-[40px] lg:pt-[120px]'>
<div className='container'>
<div className='-mx-4 flex flex-wrap'>
<div className='-mx-4 flex flex-wrap wow fadeInUp' data-wow-delay='.2s'>
<div className='w-full px-4'>
<div className='mx-auto mb-12 lg:mb-[40px]'>
<span className='px-3 py-0.5 rounded-2xl dark:bg-dark-1 border border-gray-200 dark:border-[#333333] dark:text-white'>

View File

@@ -21,8 +21,6 @@ export const Header = props => {
router.route === '/' ? 'text-white' : ''
)
const enableClerk = process.env.NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY
useEffect(() => {
if (isDarkMode || router.route === '/') {
setColor('text-white')
@@ -30,27 +28,27 @@ export const Header = props => {
setColor('')
}
// ======= Sticky
window.addEventListener('scroll', navBarScollListener)
return () => {
window.removeEventListener('scroll', navBarScollListener)
}
// window.addEventListener('scroll', navBarScollListener)
// return () => {
// window.removeEventListener('scroll', navBarScollListener)
// }
}, [isDarkMode])
// 滚动监听
const throttleMs = 200
const navBarScollListener = useCallback(
throttle(() => {
// eslint-disable-next-line camelcase
const ud_header = document.querySelector('.ud-header')
const scrollY = window.scrollY
// 控制台输出当前滚动位置和 sticky 值
if (scrollY > 0) {
ud_header?.classList?.add('sticky')
} else {
ud_header?.classList?.remove('sticky')
}
}, throttleMs)
)
// const navBarScollListener = useCallback(
// throttle(() => {
// // eslint-disable-next-line camelcase
// const ud_header = document.querySelector('.ud-header')
// const scrollY = window.scrollY
// // 控制台输出当前滚动位置和 sticky 值
// if (scrollY > 0) {
// ud_header?.classList?.add('sticky')
// } else {
// ud_header?.classList?.remove('sticky')
// }
// }, throttleMs)
// )
return (
<>

View File

@@ -34,7 +34,7 @@ export const Hero = props => {
</div>
{/* 文字标题等 */}
<div className='w-full py-20 dark:text-white'>
<div className='w-full pb-15 dark:text-white'>
<div className='container -mx-4 flex flex-wrap items-center'>
<div className='w-full px-4'>
<div

View File

@@ -56,7 +56,7 @@ export const Logo = props => {
onClick={() => {
router.push('/')
}}
className={`${logoTextColor} logo dark:text-white py-1.5 header-logo-text whitespace-nowrap text-2xl font-semibold`}>
className={`${logoTextColor} logo dark:text-white py-1.5 header-logo-text whitespace-nowrap font-semibold`}>
{siteConfig('TITLE')}
</span>
</div>

View File

@@ -26,7 +26,7 @@ export const MenuItem = ({ link }) => {
<Link
href={link?.href}
target={link?.target}
className={`ud-menu-scroll mx-8 flex py-2 text-base font-medium text-dark group-hover:text-primary dark:text-white lg:mr-0 lg:inline-flex lg:px-0 lg:py-6 ${
className={`ud-menu-scroll mx-8 flex py-2 text-sm font-medium text-dark group-hover:text-primary dark:text-white lg:mr-0 lg:inline-flex lg:px-0 lg:py-6 ${
router.route === '/'
? 'lg:text-white lg:group-hover:text-white'
: ''
@@ -42,7 +42,7 @@ export const MenuItem = ({ link }) => {
<li className='submenu-item group relative whitespace-nowrap'>
<button
onClick={toggleSubMenu}
className={`cursor-pointer relative px-8 flex items-center justify-between py-2 text-base font-medium text-dark group-hover:text-primary dark:text-white lg:ml-8 lg:mr-0 lg:inline-flex lg:py-6 lg:pl-0 lg:pr-4 ${
className={`cursor-pointer relative px-8 flex items-center justify-between py-2 text-sm font-medium text-dark group-hover:text-primary dark:text-white lg:ml-8 lg:mr-0 lg:inline-flex lg:py-6 lg:pl-0 lg:pr-4 ${
router.route === '/'
? 'lg:text-white lg:group-hover:text-white'
: ''

View File

@@ -13,7 +13,7 @@ export const Team = () => {
<section
id='team'
className='overflow-hidden pb-12 pt-20 lg:pb-[90px] lg:pt-[120px]'>
<div className='container mx-auto'>
<div className='container mx-auto wow fadeInUp' data-wow-delay='.2s'>
<div className='flex flex-col md:flex-row -mx-4 justify-between'>
{/* 左边肖像图 */}
<div className='mx-6 mb-6 max-w-96 border-gray-200 dark:border-[#333333] dark:bg-dark-1 border rounded-2xl overflow-hidden'>

View File

@@ -160,29 +160,9 @@ const CONFIG = {
PROXIO_ABOUT_KEY_3: '交付项目',
PROXIO_ABOUT_VAL_3: '5000+',
PROXIO_ABOUT_KEY_4: '累积创作时长(小时)',
PROXIO_ABOUT_VAL_4: '10000+',
PROXIO_ABOUT_VAL_4: '10000+',
// 联系模块
PROXIO_CONTACT_ENABLE: true, // 联系模块开关
PROXIO_CONTACT_TITLE: '联系我们',
PROXIO_CONTACT_TEXT: '告诉我们您遇到的问题',
PROXIO_CONTACT_LOCATION_TITLE: '我们的位置',
PROXIO_CONTACT_LOCATION_TEXT: '中国,福建',
PROXIO_CONTACT_EMAIL_TITLE: '我们如何帮助您?',
PROXIO_CONTACT_EMAIL_TEXT: 'mail@tangly1024.com',
// 嵌入外部表单
PROXIO_CONTACT_MSG_EXTERNAL_URL: 'https://noteforms.com/forms/yfctc7', // 基于NoteForm创建将留言数据存在Notion中
// 自定义留言表单,以下几个配置暂时废弃
// PROXIO_CONTACT_MSG_TITLE: '向我们留言',
// PROXIO_CONTACT_MSG_NAME: '姓名',
// PROXIO_CONTACT_MSG_EMAIL: '邮箱地址',
// PROXIO_CONTACT_MSG_PHONE: '联系电话',
// PROXIO_CONTACT_MSG_TEXT: '消息内容',
// PROXIO_CONTACT_MSG_SEND: '发送消息',
// PROXIO_CONTACT_MSG_THANKS: '感谢您的留言',
// 横向滚动文字
PROXIO_BRANDS_ENABLE: true, // 滚动文字
PROXIO_BRANDS: [
@@ -252,7 +232,7 @@ const CONFIG = {
// 页面底部的行动呼吁模块
PROXIO_CTA_ENABLE: true,
PROXIO_CTA_TITLE: '与我建立联系',
PROXIO_CTA_TITLE_2: '让我们开始链接并尽快启动您的项目',
PROXIO_CTA_TITLE_2: '让我们立刻启动您的项目',
PROXIO_CTA_DESCRIPTION:
'访问NotionNext的操作文档我们提供了详细的教程帮助你即刻搭建站点',
PROXIO_CTA_BUTTON: true, // 是否显示按钮

View File

@@ -12,7 +12,6 @@ import { Career } from './components/Career'
import { BackToTopButton } from './components/BackToTopButton'
import { Blog } from './components/Blog'
import { Brand } from './components/Brand'
import { Contact } from './components/Contact'
import { FAQ } from './components/FAQ'
import { Features } from './components/Features'
import { Footer } from './components/Footer'
@@ -136,10 +135,6 @@ const LayoutIndex = props => {
{/* 产品特性 */}
{siteConfig('PROXIO_FEATURE_ENABLE', true, CONFIG) && <Features />}
{/* 价格 */}
{/* {siteConfig('PROXIO_PRICING_ENABLE', true, CONFIG) && <Pricing />} */}
{/* 评价展示 */}
{siteConfig('PROXIO_TESTIMONIALS_ENABLE', true, CONFIG) && (
<Testimonials />