Vill du skapa ett intranät i WordPress för din organisation? WordPress är en kraftfull plattform med massor av flexibla alternativ som gör den idealisk att använda som ditt företags intranät. I den här artikeln visar vi dig hur du skapar ett WordPress-intranät för din organisation samtidigt som du håller det privat och säkert.
Vad är ett intranät eller extranät? Varför använda WordPress som din intranätplattform?
Intranät eller extranät är en kommunikationsplattform som används av en organisation för kommunikation, fildelning, meddelanden och andra organisatoriska aktiviteter.
WordPress är en utmärkt plattform för att bygga din organisations intranät eller extranät. Det är lätt att underhålla, open source och ger you tillgång till tusentals WordPress plugins för att add new funktioner när det behövs.
Ett intranät körs på en organisations privata nätverk. Vanligtvis är ett kontors IT-system anslutet via kabel eller trådlösa nätverksadaptrar. En dator i nätverket kan användas som web server och servera en WordPress website.
Följ instruktionerna i vår guide om hur du installerar WordPress på ett Windows-nätverk med WAMP eller installerar WordPress på en Mac-dator med MAMP för att starta ditt WordPress-intranät.
Ett extranät är å andra sidan en intranätplattform som är tillgänglig för ett större nätverk eller ett offentligt internet. I klartext kan detta vara en website som är tillgänglig för allmänheten men begränsad till endast användare med behörighet.
Det är viss nytta om din organisation är utspridd över olika geografiska locations.
För att skapa ditt WordPress extranät behöver du ett WordPress webbhotell account och ett domain name. Efter det kan du installera WordPress och sedan ställa in det så att det används som din organisations intranät.
När du har installerat WordPress som ditt intranät är nästa steg att konvertera det till ett kommunikationsnav för din organisation.
För att göra det använder du flera tillägg till WordPress. Vi kommer att visa dig den grundläggande installationen som kommer att fungera som grunden för att ditt WordPress-intranät ska kunna växa och uppfylla din organisations mål.
Setting Up BuddyPress som din WordPress Intranät Hub
BuddyPress är ett systerprojekt till WordPress. Det konverterar din WordPress website till ett socialt nätverk. Här är några av de saker som ett intranät som drivs av BuddyPress kan göra:
- Du kommer att kunna bjuda in användare att registrera sig på företagets intranät
- Användare kommer att kunna skapa utökade användarprofiler
- Activates streams allow users to follow latest updates like Twitter or Facebook
- You kommer att kunna skapa användargrupper för att sortera användare i avdelningar eller team
- Användare kan följa varandra som vänner
- Användare kan skicka privata meddelanden till varandra
- Du kan lägga till nya funktioner genom att lägga till tillägg från tredje part
- Du har gott om alternativ för design med WordPress themes för BuddyPress
För att komma igång måste du först installera och aktivera tillägget BuddyPress. För mer detaljer, se vår steg-för-steg guide om hur du installerar ett tillägg till WordPress.
Efter aktivering, heada över till Settings ” BuddyPress page för att konfigurera plugin-inställningar.
För kompletta steg-för-steg-instruktioner, se vår guide om hur du gör WordPress till ett socialt nätverk med BuddyPress.
Säkra ditt WordPress-intranät med All-in-One Intranet
Om du kör ett WordPress-intranät på en lokal server kan du säkra det genom att limitera åtkomsten till interna IP-adresser i din .htaccess-fil.
Men om du kör ett extranät kan dina användare komma åt intranätet från olika nätverk och IP-adresser.
För att se till att endast användare med behörighet får tillgång till ditt företags intranät måste du göra ditt extranät privat och tillgängligt endast för registrerade användare.
För det måste du installera och aktivera tillägget All-in-One Intranet. För mer detaljer, se vår steg-för-steg guide om hur du installerar ett plugin för WordPress.
Efter aktivering, heada över till Settings ” All-in-One Int ranet page för att konfigurera plugin-inställningarna.
Först måste du kontrollera boxen bredvid alternativet ”Force site to be entirely private”. Detta kommer att göra alla pages på din WordPress site helt privata.
Det enda som detta plugin ej kommer att göra privat är filerna i din uploads directory. Oroa dig inte, vi kommer att visa dig hur du skyddar den senare i den här artikeln.
Därefter måste du ange en URL där du vill att användare ska redirectas när de är inloggade. Detta kan vara vilken page som helst på ditt intranät.
Slutligen kan du automatiskt logga ut inaktiverade användare efter ett visst antal minuter.
Glöm inte att clicka på knappen save changes för att spara dina settings.
Säkra mediauppladdningar på ditt WordPress-intranät
Att göra din website helt privat påverkar inte media files. Om någon vet den exakta URL:en till en fil kan de komma åt den utan begränsning.
Låt oss ändra på det.
För bättre skydd kommer vi att redirecta all requests som görs till mappen uploads till ett enkelt PHP-skript.
Detta PHP-skript kommer att kontrollera om en användare är inloggad. Om de är det kommer det att servera filen. Annars kommer användaren att redirectas till login page.
Först måste du skapa en new fil på din dator med hjälp av en plain text editor som Notepad. Efter det måste du copy and paste följande kod och spara filen som download-file.php
på ditt skrivbord.
<?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 );
Anslut nu till din website med hjälp av en FTP-klient. När du är ansluten, uploada filen du just skapade till /wp-contents/uploads/ folder på din website.
Därefter måste du editera .htaccess-filen i din websites root folder. Add to följande kod längst ner i din .htaccess-fil:
RewriteCond %{REQUEST_FILENAME} -s RewriteRule ^wp-content/uploads/(.*)$ download-file.php?file=$1 [QSA,L]
Glöm inte att save dina ändringar och uploada filen tillbaka till din website.
Nu kommer alla användares requests till din media folder att skickas till ett proxy script för att kontrollera autentisering och redirecta användare till login page.
4. Lägga till formulär på ditt WordPress-intranät med WPForms
Huvudmålet med ett företags intranät är kommunikation. BuddyPress gör ett bra jobb med aktivitetsstreams, comments och privata meddelanden.
Ibland behöver du dock samla in information privat i en omröstning eller undersökning. Du behöver också sortera och lagra den informationen för senare användning.
Det är här WPForms kommer in i bilden. Det är den bästa WordPress form builder på marknaden.
Det saknar inte bara behörighet att enkelt skapa vackra formulär, det sparar också användarnas responsive i databasen. Du kan exportera responses för alla formulär till en CSV-fil.
This allows you to organize form responses in spreadsheets, print them, and share among your colleagues.
Utöka ditt WordPress-intranät
Vid det här laget bör du ha ett perfekt capability intranät för din organisation. Men när du testar plattformen eller öppnar den för användare kanske du vill add new funktioner eller göra den säkrare.
Det finns gott om tillägg till WordPress som kan hjälpa dig med det. Här är några tools som du kanske vill add to direkt.
- Sucuri – För att förbättra WordPress säkerhet genom att skydda den från obehörig åtkomst och skadliga DDoS-attacker.
- Envira Gallery – För att skapa beautiful fotogallerier.
- Google Drive Embedder – För att enkeltembeda Google Drive-dokument var som helst i ditt WordPress-intranät.
Det var allt för den här gången.
Vi hoppas att den här artikeln hjälpte dig att skapa ett WordPress-intranät för din organisation. Du kanske också vill se vår jämförelse av de bästa löneprogrammen för småföretag.
Om du gillade den här artikeln, vänligen prenumerera på vår YouTube-kanal för WordPress video tutorials. Du kan också hitta oss på Twitter och Facebook.
John Akpama
The article is very helpful. Quick question please, for an intranet, how do other computers on my internal network access the wordpress intranet? If there is a previous article on this please share the link let me go through it. TIA
WPBeginner Support
It would depend on how your intranet is set up as each intranet can have its own tools for customizing what URL goes where. If the tool you are using for your network has documentation we would recommend checking that and there should be the option to set where a specific URL directs to.
Administratör
Megan
How would you update WP if you do not have access to the internet? Does it have to be done manually through FTP?
WPBeginner Support
Correct, we cover how to do this as option two in our article here: https://www.wpbeginner.com/beginners-guide/ultimate-guide-to-upgrade-wordpress-for-beginners-infograph/
Administratör
AdamGreenberg
I’m a US Peace Corps volunteer in Zambia considering the possibilities of doing this in the rural village where I live. Starting with the two schools who have a few, older computers. There’s no internet here, so this could be fantastic for sharing offline learning like Khan Academy Lite and such. I understand the localhost WordPress component of this, but how do I start by even connecting two computers in a LAN? Is it with cat 5 cables or can it even be done with wireless routers? Thank you. I think an Intranet could be a huge help here.
WPBeginner Support
That question is a bit beyond this article, it would depend on what tools you have available but normally one computer would need to be the web server while the other computers need the ability to connect to that computer
Administratör
Hjason
Will my media or my content will be indexed by google or is it 100% safe?
WPBeginner Support
If you are installing it on a local network then Google should be unable to crawl the site. If you’re publishing the site online with hosting then you can make the site private using the method in our article here: https://www.wpbeginner.com/beginners-guide/how-to-make-your-wordpress-blog-completely-private/
Administratör
Blair Hewitt
Why are my users not sending comments?
WPBeginner Support
There are multiple possible reasons, you may want to go through the steps in this article to make users want to comment more: https://www.wpbeginner.com/beginners-guide/how-to-increase-your-blog-traffic/
Administratör
Ken
I tried to implement the Securing Media Uploads script and configured in .htaccess but when I tried to copy the exact image link and access it in a browser that does not have the intranet session it can still access! Did I missed some PHP modules?
Michael
I have been using the method described in this article to protect my media for a couple of days now when all of a sudden it stopped working – not sure if sue to a change in server configuration or something else. Media wouldn’t show up for registered users, when diretly requesting a file being logged in a 404 error would appear.
Solved it by changing two things:
.htaccess:
RewriteCond %{REQUEST_FILENAME} -s
RewriteRule ^wp-content/uploads/(.*)$ wp-content/uploads/download-file.php?file=$1 [QSA,L]
download-file:
<?php
$parse_uri = explode( 'wp-content', $_SERVER['SCRIPT_FILENAME'] );
require_once( $parse_uri[0] . 'wp-load.php' );
is_user_logged_in() || auth_redirect();
Just in case someone has the same problem…
Stephen
Thanks Michael, was having the same problem, added this and it’s working for me now.
Sean
This post was just what I was looking for, so thank you for posting it!
However, something isn’t right.
I may be brand spanking new to this whole thing but either the adding of the script for securing media files and/or the 2 lines added to the .htaccess file prevents images from being displayed in the Media Library.
I’m thinking it’s a permission issue of some type but I’m not really sure how to proceed.
Sean
Looks like it’s the .htaccess file (2 lines of code) that is causing the images to not load in the Media Library. I put the old one back and the images load. Any advice would be appreciated.
Michael
Sean, I am having the same problem here. I did a small workaround in the .htaccess:
RewriteCond %{REMOTE_ADDR} !123.456.789.000
RewriteCond %{REQUEST_FILENAME} -s
RewriteRule ^wp-content/uploads/(.*)$ download-file.php?file=$1 [QSA,L]
The first line makes an exception for my home IP, I might be adding office IPs too. Seems to work quite well.
Jonathon
Your code for restricting the uploads folder doesn’t seem to be working anymore or I might have a plugin conflict.
WPBeginner Support
Hi Jonathan,
Are you seeing an error message? If not, then you probably missed something. Please follow the instructions again. Let’s us know how it went. Good Luck
Administratör
LFreitas
Hi, thanks for the article!
I’m planning to use WP in a extranet and this will be very helpful.
To meet the requirements I also need an unique calendar for the staff.
It should allow schedule meetings with multiple people and these people should receive an email with the invitation; also this email should contain metadata that added the event to outlook calendar, as it is used to remind people of the meeting. (Everyone uses Outlook as email here).
Do you guys know any plugin or method to do this?
I’ve tried several calendar and booking plugins, but none meets this requirement. Specially because it is possible to have multiple meetings at the same time, with different people.
Thanks in advance!
WPBeginner Support
Hey LFreitas,
Have you looked into Google Calendar? It syncs well with outlook and you can Embed the calendar in WordPress.
Administratör
Thomas
Well – what if I don*t want to feed Google with my data? Is there any CalDAV/CardDAV integration possible?