您想为您的组织创建WordPress Intranet吗?WordPress是一个功能强大的平台,拥有大量灵活的选项,非常适合用作公司的内部网。在本文中,我们将向您展示如何为您的组织创建WordPress Intranet,同时保持其私密性和安全性。

Creating a WordPress intranet for your organization

什么是内联网或外联网?为什么使用WordPress作为Intranet平台?

Intranet或Extranet是组织用于通信,文件共享,公告和其他组织活动的通信平台。

WordPress是构建组织内部网或外联网的绝佳平台。它易于维护,开源,并允许您访问数千个WordPress插件,以便在需要时添加新功能。

Intranet在组织的专用网络上运行。通常,办公室IT系统通过有线或无线网络适配器连接。网络上的一台计算机可用作Web服务器并托管WordPress网站

按照我们的指南中有关如何使用WAMP在Windows网络上安装WordPress或使用MAMP在Mac计算机上安装WordPress来启动WordPress Intranet的说明。

另一方面,外联网是可供大型网络或公共互联网访问内部网平台。用简单的英语,这可以是一个可公开访问网站,但仅限于授权用户

如果您的组织分布在不同的地理位置,则此功能特别有用。

创建WordPress外联网,您需要一个WordPress主机帐户和域名。之后,您可以安装WordPress,然后将其设置为用作组织的Intranet。

将WordPress安装为Intranet后,下一步就是将其转换为组织的通信中心。

要做到这一点,你将使用几个WordPress插件。我们将向您展示基本设置,该设置将作为您的WordPress内部网的基础,以实现您的组织目标。

BuddyPress设置为您的WordPress Intranet Hub

BuddyPress是WordPress的姐妹项目。它将您的WordPress网站转换为社交网络。以下是BuddyPress支持的Intranet可以做的一些事情:

  • 您将能够邀请用户在公司内部网上注册
  • 用户将能够创建扩展的用户配置文件
  • 活动流允许用户关注Twitter或Facebook等最新更新
  • 您将能够创建用户组以将用户分类为部门或团队
  • 用户可以作为朋友%%跟随对方%%%%用户可以向对方发送私人消息
  • 用户可以互相发送私人消息
  • 您可以通过添加第三方插件添加新功能
  • 您将为BuddyPress提供大量有关WordPress主题的设计选项

首先,您需要安装并激活BuddyPress插件。有关更多详细信息,请参阅有关如何安装WordPress插件的分步指南。

激活后,转到设置»BuddyPress 页面以配置插件设置。

BuddyPress settings

有关完整的分步说明,请参阅有关如何使用BuddyPress将WordPress转换为社交网络的指南。

使用多合一内联网保护您的WordPress Intranet

如果您在本地服务器上运行WordPress内部网,则可以通过限制对.htaccess文件中内部IP的访问来保护它。

但是,如果您正在运行Extranet,那么您的用户可能正在从不同的网络和IP地址访问Intranet。

要确保只有授权用户才能访问您公司的Intranet,您需要将您的Extranet设为私有,并且只有注册用户才能访问。

为此,您需要安装并激活All-in-One Intranet插件。有关更多详细信息,请参阅有关如何安装WordPress插件的分步指南。

激活后,转到设置»一体化Intranet 用于配置插件设置的页面。

All in One Intranet settings

首先,您需要选中“强制网站完全隐私”选项旁边的复选框。这将使您的WordPress网站的所有页面完全私密。

此插件不会私有的唯一内容是上传目录中的文件。别担心,我们将在本文后面向您展示如何保护它。

接下来,您需要提供一个URL,您希望用户在登录时重定向。这可以是Intranet上的任何页面。

最后,您可以在一定的分钟数后自动注销非活动用户。

不要忘记单击保存更改按钮来存储您的设置。

在WordPress Intranet上保护媒体上传

使您的网站完全保密不会影响媒体文件。如果有人知道文件的确切URL,那么他们可以不受任何限制地访问它。

让我们改变这一点。

为了更好的保护,我们将所有对uploads文件夹的请求重定向到一个简单的PHP脚本。

此php脚本将检查用户是否已登录。如果是,则它将提供该文件。否则,用户将被重定向到登录页面。

首先,您需要使用纯文本编辑器(如记事本)在计算机上创建新文件。之后,您需要复制并粘贴以下代码,并将文件保存为桌面上的 download-file.php

<?php
require_once("wp-load.php");

is_user_logged_in() ||  auth_redirect();

list($basedir) = array_values(array_intersect_key(wp_upload_dir(), array("basedir" => 1)))+array(NULL);

$file =  rtrim($basedir,"/")."/".str_replace("..", "", isset($_GET[ "file" ])?$_GET[ "file" ]:"");
if (!$basedir || !is_file($file)) {
	status_header(404);
	die("404 — File not found.");
}

$mime = wp_check_filetype($file);
if( false === $mime[ "type" ] && function_exists( "mime_content_type" ) )
	$mime[ "type" ] = mime_content_type( $file );

if( $mime[ "type" ] )
	$mimetype = $mime[ "type" ];
else
	$mimetype = "image/" . substr( $file, strrpos( $file, "." ) + 1 );

header( "Content-Type: " . $mimetype ); // always send this
if ( false === strpos( $_SERVER["SERVER_SOFTWARE"], "Microsoft-IIS" ) )
	header( "Content-Length: " . filesize( $file ) );

$last_modified = gmdate( "D, d M Y H:i:s", filemtime( $file ) );
$etag = """ . md5( $last_modified ) . """;
header( "Last-Modified: $last_modified GMT" );
header( "ETag: " . $etag );
header( "Expires: " . gmdate( "D, d M Y H:i:s", time() + 100000000 ) . " GMT" );

// Support for Conditional GET
$client_etag = isset( $_SERVER["HTTP_IF_NONE_MATCH"] ) ? stripslashes( $_SERVER["HTTP_IF_NONE_MATCH"] ) : false;

if( ! isset( $_SERVER["HTTP_IF_MODIFIED_SINCE"] ) )
	$_SERVER["HTTP_IF_MODIFIED_SINCE"] = false;

$client_last_modified = trim( $_SERVER["HTTP_IF_MODIFIED_SINCE"] );
// If string is empty, return 0. If not, attempt to parse into a timestamp
$client_modified_timestamp = $client_last_modified ? strtotime( $client_last_modified ) : 0;

// Make a timestamp for our most recent modification...
$modified_timestamp = strtotime($last_modified);

if ( ( $client_last_modified && $client_etag )
	? ( ( $client_modified_timestamp >= $modified_timestamp) && ( $client_etag == $etag ) )
	: ( ( $client_modified_timestamp >= $modified_timestamp) || ( $client_etag == $etag ) )
	) {
	status_header( 304 );
	exit;
}

readfile( $file );

现在使用FTP客户端连接到您的网站。连接后,将刚刚创建文件上传到您网站上的/ wp-contents / uploads /文件夹。

接下来,您需要编辑网站文件夹中的.htaccess文件。在.htaccess文件的底部添加以下代码:

RewriteCond %{REQUEST_FILENAME} -s
RewriteRule ^wp-content/uploads/(.*)$ download-file.php?file=$1 [QSA,L]

不要忘记保存更改并将文件上传回您的网站

现在,您对媒体文件夹的所有用户请求都将发送到代理脚本以检查身份验证并将用户重定向到登录页面。

4。使用WPForms向您的WordPress Intranet添加表单

WPForms

公司内部网的主要目标是通信。BuddyPress在活动流,评论和私人消息方面做得很好。

但是,有时您需要在民意调查或调查中私下收集信息。您还需要对该信息进行排序和存储以供以后使用。

这就是WPForms的用武之地。它是市场上最好的WordPress表单构建器。

它不仅可以让您轻松创建漂亮的表单,还可以在数据库中保存用户响应。您可以将任何表单的响应导出为CSV文件

这使您可以在电子表格中组织表单响应,打印它们,并在同事之间共享。

扩展您的WordPress Intranet

到目前为止,您的组织应该拥有一个功能完善的Intranet。但是,在测试平台或为用户打开平台时,您可能希望添加新功能或使其更安全。

有很多WordPress插件可以帮助你做到这一点。以下是您可能希望立即添加的一些工具。

  • Sucuri – 通过保护WordPress免受未经授权的访问和恶意DDoS攻击来提高WordPress的安全性。
  • Envira Gallery – 创建漂亮的照片画廊。
  • Google Drive Embedder – 轻松嵌入Google云端硬盘内部网中的任何位置都可以使用Google云端硬盘。

这就是现在的全部内容。

我们希望本文能帮助您为组织创建一个WordPress Intranet。您可能还希望查看我们的网站最有用的WordPress小部件列表。

评论被关闭。